diff --git a/backends/pelioncloud_devicemanagement/docs/AccessKey.md b/backends/pelioncloud_devicemanagement/docs/AccessKey.md
new file mode 100644
index 000000000..f30e9f8ad
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/AccessKey.md
@@ -0,0 +1,38 @@
+
+# AccessKey
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**accountId** | **String** | The ID of the account. | [optional]
+**applicationId** | **String** | The ID of the application. | [optional]
+**createdAt** | [**DateTime**](DateTime.md) | Creation UTC time RFC3339. | [optional]
+**description** | **String** | The description of the access key. | [optional]
+**etag** | **String** | API resource entity version. | [optional]
+**expiration** | [**DateTime**](DateTime.md) | Expiration time of the access key, as UTC time RFC3339. Expiration makes the access key inoperative and the status will be EXPIRED. The client using the expired access key is no longer able to use the REST API. The access key expiration does not invalidate existing configurations meaning that subscribed events will continue to flow on existing channels. | [optional]
+**id** | **String** | The ID of the access key. | [optional]
+**key** | **String** | The access key. The full key including the secret part is visible in the response for create only | [optional]
+**lastUsedAt** | [**DateTime**](DateTime.md) | The time of the latest access key usage. | [optional]
+**name** | **String** | The display name for the access key. |
+**object** | [**ObjectEnum**](#ObjectEnum) | Entity name: always 'access-key' | [optional]
+**status** | [**StatusEnum**](#StatusEnum) | The status of the access key. ACTIVE means that the access key is operational. INACTIVE means that the access key is not operational and it prevents the clients to use the REST API. Inactivating the access key does not invalidate existing configurations meaning that subscribed events will continue to flow on existing channels. The EXPIRED status is not allowed to be set directly, it is derived from the expiration attribute. | [optional]
+**updatedAt** | [**DateTime**](DateTime.md) | Last update UTC time RFC3339. | [optional]
+
+
+
+## Enum: ObjectEnum
+Name | Value
+---- | -----
+KEY | "access-key"
+
+
+
+## Enum: StatusEnum
+Name | Value
+---- | -----
+ACTIVE | "ACTIVE"
+INACTIVE | "INACTIVE"
+EXPIRED | "EXPIRED"
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/AccessKeyList.md b/backends/pelioncloud_devicemanagement/docs/AccessKeyList.md
new file mode 100644
index 000000000..819b83996
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/AccessKeyList.md
@@ -0,0 +1,31 @@
+
+# AccessKeyList
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**after** | **String** | The entity ID to retrieve after the given one. | [optional]
+**data** | [**List<AccessKey>**](AccessKey.md) | A list of entities. |
+**hasMore** | **Boolean** | Flag indicating whether there are more results. |
+**limit** | **Integer** | The number of results to return, or equal to `total_count`. |
+**object** | [**ObjectEnum**](#ObjectEnum) | Entity name: always `list`. |
+**order** | [**OrderEnum**](#OrderEnum) | The order of the records to return based on creation time. Available values: ASC, DESC; by default ASC. | [optional]
+**totalCount** | **Integer** | The total number of records, if requested. |
+
+
+
+## Enum: ObjectEnum
+Name | Value
+---- | -----
+LIST | "list"
+
+
+
+## Enum: OrderEnum
+Name | Value
+---- | -----
+ASC | "ASC"
+DESC | "DESC"
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountAccessKeysApi.md b/backends/pelioncloud_devicemanagement/docs/AccountAccessKeysApi.md
new file mode 100644
index 000000000..fc69d357f
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/AccountAccessKeysApi.md
@@ -0,0 +1,130 @@
+# AccountAccessKeysApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**getAccessKey**](AccountAccessKeysApi.md#getAccessKey) | **GET** v3/access-keys/{access_key_id} | Get access key.
+[**getAllAccessKeys**](AccountAccessKeysApi.md#getAllAccessKeys) | **GET** v3/access-keys | Get all access keys.
+
+
+
+# **getAccessKey**
+> AccessKey getAccessKey(accessKeyId)
+
+Get access key.
+
+Retrieve details of an access key. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/access-keys/{access_key_id} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountAccessKeysApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountAccessKeysApi apiInstance = new AccountAccessKeysApi();
+String accessKeyId = "accessKeyId_example"; // String | The ID of the access key to retrieve.
+try {
+ AccessKey result = apiInstance.getAccessKey(accessKeyId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountAccessKeysApi#getAccessKey");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accessKeyId** | **String**| The ID of the access key to retrieve. |
+
+### Return type
+
+[**AccessKey**](AccessKey.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getAllAccessKeys**
+> AccessKeyList getAllAccessKeys(limit, after, order, include, statusEq, applicationIdEq)
+
+Get all access keys.
+
+Retrieve an array of access keys. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/access-keys \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountAccessKeysApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountAccessKeysApi apiInstance = new AccountAccessKeysApi();
+Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
+String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
+String statusEq = "statusEq_example"; // String | Status filter.
+String applicationIdEq = "applicationIdEq_example"; // String | Application filter.
+try {
+ AccessKeyList result = apiInstance.getAllAccessKeys(limit, after, order, include, statusEq, applicationIdEq);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountAccessKeysApi#getAllAccessKeys");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
+ **statusEq** | **String**| Status filter. | [optional]
+ **applicationIdEq** | **String**| Application filter. | [optional]
+
+### Return type
+
+[**AccessKeyList**](AccessKeyList.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountApiKeysApi.md b/backends/pelioncloud_devicemanagement/docs/AccountApiKeysApi.md
index 554732e17..82a752685 100644
--- a/backends/pelioncloud_devicemanagement/docs/AccountApiKeysApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/AccountApiKeysApi.md
@@ -11,10 +11,10 @@ Method | HTTP request | Description
[**createApiKey**](AccountApiKeysApi.md#createApiKey) | **POST** v3/api-keys | Create a new API key.
[**deleteApiKey**](AccountApiKeysApi.md#deleteApiKey) | **DELETE** v3/api-keys/{apikey_id} | Delete API key.
[**getAllApiKeys**](AccountApiKeysApi.md#getAllApiKeys) | **GET** v3/api-keys | Get all API keys.
-[**getApiKey**](AccountApiKeysApi.md#getApiKey) | **GET** v3/api-keys/{apikey_id} | Get API key details.
-[**getGroupsOfApikey**](AccountApiKeysApi.md#getGroupsOfApikey) | **GET** v3/api-keys/{apikey_id}/groups | Get groups of the API key.
-[**getGroupsOfMyApiKey**](AccountApiKeysApi.md#getGroupsOfMyApiKey) | **GET** v3/api-keys/me/groups | Get groups of the API key.
-[**getMyApiKey**](AccountApiKeysApi.md#getMyApiKey) | **GET** v3/api-keys/me | Get API key details.
+[**getApiKey**](AccountApiKeysApi.md#getApiKey) | **GET** v3/api-keys/{apikey_id} | Get API key.
+[**getGroupsOfApikey**](AccountApiKeysApi.md#getGroupsOfApikey) | **GET** v3/api-keys/{apikey_id}/groups | Get policy groups of an API key.
+[**getGroupsOfMyApiKey**](AccountApiKeysApi.md#getGroupsOfMyApiKey) | **GET** v3/api-keys/me/groups | Get policy groups of the current API key.
+[**getMyApiKey**](AccountApiKeysApi.md#getMyApiKey) | **GET** v3/api-keys/me | Get current API key.
[**removeApiKeyFromGroups**](AccountApiKeysApi.md#removeApiKeyFromGroups) | **DELETE** v3/api-keys/{apikey_id}/groups | Remove API key from groups.
[**removeApiKeyFromListedGroups**](AccountApiKeysApi.md#removeApiKeyFromListedGroups) | **POST** v3/api-keys/{apikey_id}/groups/remove | Remove API key from groups.
[**removeMyApiKeyFromListedGroups**](AccountApiKeysApi.md#removeMyApiKeyFromListedGroups) | **POST** v3/api-keys/me/groups/remove | Remove API key from groups.
@@ -30,7 +30,7 @@ Method | HTTP request | Description
Add API key to a list of groups.
-Add API key to groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id}/groups \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Add API key to groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id}/groups \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -87,7 +87,7 @@ Name | Type | Description | Notes
Add API key to a list of groups.
-Add API key to groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id}/groups/add \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Add API key to groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id}/groups/add \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -144,7 +144,7 @@ Name | Type | Description | Notes
Add API key to a list of groups.
-Add API key to groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/api-keys/me/groups \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Add API key to groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/api-keys/me/groups \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -199,7 +199,7 @@ Name | Type | Description | Notes
Add API key to a list of groups.
-Add API key to groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/api-keys/me/groups/add/ \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Add API key to groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/api-keys/me/groups/add/ \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -254,7 +254,7 @@ Name | Type | Description | Notes
Create a new API key.
-Create a new API key. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/api-keys -d '{\"name\": \"MyKey1\"}' \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' ```
+Create a new API key. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/api-keys -d '{\"name\": \"MyKey1\"}' \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' ```
### Example
```java
@@ -309,7 +309,7 @@ Name | Type | Description | Notes
Delete API key.
-Delete the API key. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id} \\ -H 'Authorization: Bearer <api_key>' ```
+Delete the API key. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -364,7 +364,7 @@ Name | Type | Description | Notes
Get all API keys.
-Retrieve API keys in an array, optionally filtered by the owner. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/api-keys \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve an array of API keys, optionally filtered by the owner. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/api-keys \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -385,11 +385,11 @@ Bearer.setApiKey("YOUR API KEY");
AccountApiKeysApi apiInstance = new AccountApiKeysApi();
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
String keyEq = "keyEq_example"; // String | API key filter. Do not include the private portion of the API key (the last 32 characters).
-String ownerEq = "ownerEq_example"; // String | Owner name filter.
+String ownerEq = "ownerEq_example"; // String | Owner name filter. Note: This parameter is restricted to administrators.
try {
ApiKeyInfoRespList result = apiInstance.getAllApiKeys(limit, after, order, include, keyEq, ownerEq);
System.out.println(result);
@@ -404,11 +404,11 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
**keyEq** | **String**| API key filter. Do not include the private portion of the API key (the last 32 characters). | [optional]
- **ownerEq** | **String**| Owner name filter. | [optional]
+ **ownerEq** | **String**| Owner name filter. <b>Note:</b> This parameter is restricted to administrators. | [optional]
### Return type
@@ -427,9 +427,9 @@ Name | Type | Description | Notes
# **getApiKey**
> ApiKeyInfoResp getApiKey(apikeyId)
-Get API key details.
+Get API key.
-Retrieve API key details. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id} \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve details of an API key. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -482,9 +482,9 @@ Name | Type | Description | Notes
# **getGroupsOfApikey**
> GroupSummaryList getGroupsOfApikey(apikeyId, limit, after, order, include)
-Get groups of the API key.
+Get policy groups of an API key.
-Retrieve groups associated with the API key. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id}/groups \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve an array of policy groups associated with an API key. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id}/groups \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -506,8 +506,8 @@ Bearer.setApiKey("YOUR API KEY");
AccountApiKeysApi apiInstance = new AccountApiKeysApi();
String apikeyId = "apikeyId_example"; // String | The ID of the API key.
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
try {
GroupSummaryList result = apiInstance.getGroupsOfApikey(apikeyId, limit, after, order, include);
@@ -524,8 +524,8 @@ Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**apikeyId** | **String**| The ID of the API key. |
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
### Return type
@@ -545,9 +545,9 @@ Name | Type | Description | Notes
# **getGroupsOfMyApiKey**
> GroupSummaryList getGroupsOfMyApiKey(limit, after, order, include)
-Get groups of the API key.
+Get policy groups of the current API key.
-Retrieve groups associated with the API key. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/api-keys/me/groups \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve an array of policy groups associated with the current API key. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/api-keys/me/groups \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -568,8 +568,8 @@ Bearer.setApiKey("YOUR API KEY");
AccountApiKeysApi apiInstance = new AccountApiKeysApi();
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
try {
GroupSummaryList result = apiInstance.getGroupsOfMyApiKey(limit, after, order, include);
@@ -585,8 +585,8 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
### Return type
@@ -606,9 +606,9 @@ Name | Type | Description | Notes
# **getMyApiKey**
> ApiKeyInfoResp getMyApiKey()
-Get API key details.
+Get current API key.
-Retrieve API key details. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/api-keys/me \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve details of current API key. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/api-keys/me \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -659,7 +659,7 @@ This endpoint does not need any parameter.
Remove API key from groups.
-Remove API key from groups. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id}/groups \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Remove API key from groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id}/groups \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -716,7 +716,7 @@ Name | Type | Description | Notes
Remove API key from groups.
-Remove API key from groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id}/groups/remove \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Remove API key from groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id}/groups/remove \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -773,7 +773,7 @@ Name | Type | Description | Notes
Remove API key from groups.
-Remove API key from groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/api-keys/me/groups/remove \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Remove API key from groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/api-keys/me/groups/remove \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -828,7 +828,7 @@ Name | Type | Description | Notes
Remove API key from groups.
-Remove API key from groups. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/api-keys/me/groups \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Remove API key from groups. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/api-keys/me/groups \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -883,7 +883,7 @@ Name | Type | Description | Notes
Reset the secret key.
-Reset the secret key of the API key. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id}/reset-secret \\ -H 'Authorization: Bearer <api_key>' ```
+Reset the secret key of the API key. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id}/reset-secret \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -940,7 +940,7 @@ Name | Type | Description | Notes
Update API key details.
-Update API key details. **Example:** `curl -X PUT https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id} \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\": \"TestApiKey25\"}' ```
+Update API key details. **Example:** `curl -X PUT https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id} \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\": \"TestApiKey25\"}' ```
### Example
```java
@@ -997,7 +997,7 @@ Name | Type | Description | Notes
Update API key details.
-Update API key details. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/api-keys/me \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\": \"TestApiKey25\"}' ```
+Update API key details. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/api-keys/me \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\": \"TestApiKey25\"}' ```
### Example
```java
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountApplicationsApi.md b/backends/pelioncloud_devicemanagement/docs/AccountApplicationsApi.md
new file mode 100644
index 000000000..b7d391d62
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/AccountApplicationsApi.md
@@ -0,0 +1,778 @@
+# AccountApplicationsApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**addApplicationToGroups**](AccountApplicationsApi.md#addApplicationToGroups) | **POST** v3/applications/{application_id}/groups/add | Add application to a list of groups.
+[**createApplication**](AccountApplicationsApi.md#createApplication) | **POST** v3/applications | Create a new application.
+[**createApplicationAccessKey**](AccountApplicationsApi.md#createApplicationAccessKey) | **POST** v3/applications/{application_id}/access-keys | Create a new applicationaccess key.
+[**deleteApplication**](AccountApplicationsApi.md#deleteApplication) | **DELETE** v3/applications/{application_id} | Delete application.
+[**deleteApplicationAccessKey**](AccountApplicationsApi.md#deleteApplicationAccessKey) | **DELETE** v3/applications/{application_id}/access-keys/{access_key_id} | Delete access key associated with the application.
+[**getAllApplicationAccessKeys**](AccountApplicationsApi.md#getAllApplicationAccessKeys) | **GET** v3/applications/{application_id}/access-keys | Get all access keys associated with the application.
+[**getAllApplications**](AccountApplicationsApi.md#getAllApplications) | **GET** v3/applications | Get all applications.
+[**getApplication**](AccountApplicationsApi.md#getApplication) | **GET** v3/applications/{application_id} | Get application.
+[**getApplicationAccessKey**](AccountApplicationsApi.md#getApplicationAccessKey) | **GET** v3/applications/{application_id}/access-keys/{access_key_id} | Get access key.
+[**getGroupsOfApplication**](AccountApplicationsApi.md#getGroupsOfApplication) | **GET** v3/applications/{application_id}/groups | Get policy groups of an application.
+[**removeApplicationFromGroups**](AccountApplicationsApi.md#removeApplicationFromGroups) | **POST** v3/applications/{application_id}/groups/remove | Remove application from groups.
+[**updateApplication**](AccountApplicationsApi.md#updateApplication) | **PUT** v3/applications/{application_id} | Update applicationdetails.
+[**updateApplicationAccessKey**](AccountApplicationsApi.md#updateApplicationAccessKey) | **PUT** v3/applications/{application_id}/access-keys/{access_key_id} | Update access key details.
+
+
+
+# **addApplicationToGroups**
+> Void addApplicationToGroups(applicationId, body)
+
+Add application to a list of groups.
+
+Add application to groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/applications/{application_id}/groups/add \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountApplicationsApi apiInstance = new AccountApplicationsApi();
+String applicationId = "applicationId_example"; // String | The ID of the application to add to the group.
+GroupIdList body = new GroupIdList(); // GroupIdList | A list of IDs of the groups to update.
+try {
+ Void result = apiInstance.addApplicationToGroups(applicationId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountApplicationsApi#addApplicationToGroups");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **applicationId** | **String**| The ID of the application to add to the group. |
+ **body** | [**GroupIdList**](GroupIdList.md)| A list of IDs of the groups to update. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+
+# **createApplication**
+> Application createApplication(body)
+
+Create a new application.
+
+Create a new application. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/applications -d '{\"name\": \"MyApplication1\"}' \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountApplicationsApi apiInstance = new AccountApplicationsApi();
+Application body = new Application(); // Application | The details of the application to create.
+try {
+ Application result = apiInstance.createApplication(body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountApplicationsApi#createApplication");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**Application**](Application.md)| The details of the application to create. |
+
+### Return type
+
+[**Application**](Application.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+
+# **createApplicationAccessKey**
+> AccessKey createApplicationAccessKey(applicationId, body)
+
+Create a new applicationaccess key.
+
+Create a new access key for the application. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/applications/{application_id}/access-keys -d '{\"name\": \"MyKey1\"}' \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountApplicationsApi apiInstance = new AccountApplicationsApi();
+String applicationId = "applicationId_example"; // String | The ID of the application.
+AccessKey body = new AccessKey(); // AccessKey | The details of the access key to create.
+try {
+ AccessKey result = apiInstance.createApplicationAccessKey(applicationId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountApplicationsApi#createApplicationAccessKey");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **applicationId** | **String**| The ID of the application. |
+ **body** | [**AccessKey**](AccessKey.md)| The details of the access key to create. |
+
+### Return type
+
+[**AccessKey**](AccessKey.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+
+# **deleteApplication**
+> Void deleteApplication(applicationId)
+
+Delete application.
+
+Delete the application. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/applications/{application_id} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountApplicationsApi apiInstance = new AccountApplicationsApi();
+String applicationId = "applicationId_example"; // String | The ID of the application to delete.
+try {
+ Void result = apiInstance.deleteApplication(applicationId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountApplicationsApi#deleteApplication");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **applicationId** | **String**| The ID of the application to delete. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **deleteApplicationAccessKey**
+> Void deleteApplicationAccessKey(applicationId, accessKeyId)
+
+Delete access key associated with the application.
+
+Delete the access key associated with the application. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/applications/{application_id}/access-keys/{access_key_id} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountApplicationsApi apiInstance = new AccountApplicationsApi();
+String applicationId = "applicationId_example"; // String | The ID of the application.
+String accessKeyId = "accessKeyId_example"; // String | The ID of the access key to delete.
+try {
+ Void result = apiInstance.deleteApplicationAccessKey(applicationId, accessKeyId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountApplicationsApi#deleteApplicationAccessKey");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **applicationId** | **String**| The ID of the application. |
+ **accessKeyId** | **String**| The ID of the access key to delete. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getAllApplicationAccessKeys**
+> AccessKeyList getAllApplicationAccessKeys(applicationId, limit, after, order, include, statusEq)
+
+Get all access keys associated with the application.
+
+Retrieve an array of access keys associated with the application. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/applications/{application_id}/access-keys \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountApplicationsApi apiInstance = new AccountApplicationsApi();
+String applicationId = "applicationId_example"; // String | The ID of the application.
+Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
+String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
+String statusEq = "statusEq_example"; // String | Status filter.
+try {
+ AccessKeyList result = apiInstance.getAllApplicationAccessKeys(applicationId, limit, after, order, include, statusEq);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountApplicationsApi#getAllApplicationAccessKeys");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **applicationId** | **String**| The ID of the application. |
+ **limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
+ **statusEq** | **String**| Status filter. | [optional]
+
+### Return type
+
+[**AccessKeyList**](AccessKeyList.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getAllApplications**
+> ApplicationList getAllApplications(limit, after, order, include, statusEq)
+
+Get all applications.
+
+Retrieve an array of applications. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/applications \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountApplicationsApi apiInstance = new AccountApplicationsApi();
+Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
+String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
+String statusEq = "statusEq_example"; // String | Status filter.
+try {
+ ApplicationList result = apiInstance.getAllApplications(limit, after, order, include, statusEq);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountApplicationsApi#getAllApplications");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
+ **statusEq** | **String**| Status filter. | [optional]
+
+### Return type
+
+[**ApplicationList**](ApplicationList.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getApplication**
+> Application getApplication(applicationId)
+
+Get application.
+
+Retrieve details of an application. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/applications/{application_id} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountApplicationsApi apiInstance = new AccountApplicationsApi();
+String applicationId = "applicationId_example"; // String | The ID of the application to retrieve.
+try {
+ Application result = apiInstance.getApplication(applicationId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountApplicationsApi#getApplication");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **applicationId** | **String**| The ID of the application to retrieve. |
+
+### Return type
+
+[**Application**](Application.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getApplicationAccessKey**
+> AccessKey getApplicationAccessKey(applicationId, accessKeyId)
+
+Get access key.
+
+Retrieve details of an access key associated with the application. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/applications/{application_id}/access-keys/{access_key_id} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountApplicationsApi apiInstance = new AccountApplicationsApi();
+String applicationId = "applicationId_example"; // String | The ID of the application.
+String accessKeyId = "accessKeyId_example"; // String | The ID of the access key to retrieve.
+try {
+ AccessKey result = apiInstance.getApplicationAccessKey(applicationId, accessKeyId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountApplicationsApi#getApplicationAccessKey");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **applicationId** | **String**| The ID of the application. |
+ **accessKeyId** | **String**| The ID of the access key to retrieve. |
+
+### Return type
+
+[**AccessKey**](AccessKey.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getGroupsOfApplication**
+> GroupSummaryList getGroupsOfApplication(applicationId, limit, after, order, include)
+
+Get policy groups of an application.
+
+Retrieve an array of policy groups associated with an application. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/applications/{application_id}/groups \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountApplicationsApi apiInstance = new AccountApplicationsApi();
+String applicationId = "applicationId_example"; // String | The ID of the application.
+Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
+String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
+try {
+ GroupSummaryList result = apiInstance.getGroupsOfApplication(applicationId, limit, after, order, include);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountApplicationsApi#getGroupsOfApplication");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **applicationId** | **String**| The ID of the application. |
+ **limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
+
+### Return type
+
+[**GroupSummaryList**](GroupSummaryList.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **removeApplicationFromGroups**
+> Void removeApplicationFromGroups(applicationId, body)
+
+Remove application from groups.
+
+Remove application from groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/applications/{application_id}/groups/remove \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountApplicationsApi apiInstance = new AccountApplicationsApi();
+String applicationId = "applicationId_example"; // String | The ID of the application to remove from the group.
+GroupIdList body = new GroupIdList(); // GroupIdList | A list of IDs of the groups to update.
+try {
+ Void result = apiInstance.removeApplicationFromGroups(applicationId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountApplicationsApi#removeApplicationFromGroups");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **applicationId** | **String**| The ID of the application to remove from the group. |
+ **body** | [**GroupIdList**](GroupIdList.md)| A list of IDs of the groups to update. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+
+# **updateApplication**
+> ApiKeyInfoResp updateApplication(applicationId, body)
+
+Update applicationdetails.
+
+Update application details. <b>Note:</b> This endpoint is restricted to administrators. **Example:** `curl -X PUT https://api.us-east-1.mbedcloud.com/v3/applications/{application_id} \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\": \"TestApplication25\"}' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountApplicationsApi apiInstance = new AccountApplicationsApi();
+String applicationId = "applicationId_example"; // String | The ID of the application to update.
+Application body = new Application(); // Application | New applicationattributes to store.
+try {
+ ApiKeyInfoResp result = apiInstance.updateApplication(applicationId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountApplicationsApi#updateApplication");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **applicationId** | **String**| The ID of the application to update. |
+ **body** | [**Application**](Application.md)| New applicationattributes to store. |
+
+### Return type
+
+[**ApiKeyInfoResp**](ApiKeyInfoResp.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **updateApplicationAccessKey**
+> AccessKey updateApplicationAccessKey(applicationId, accessKeyId, body)
+
+Update access key details.
+
+Update access key details. <b>Note:</b> This endpoint is restricted to administrators. **Example:** `curl -X PUT https://api.us-east-1.mbedcloud.com/v3/applications/{application_id}/access-keys/{access_key_id} \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\": \"TestAccessKey\"}' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountApplicationsApi apiInstance = new AccountApplicationsApi();
+String applicationId = "applicationId_example"; // String | The ID of the application.
+String accessKeyId = "accessKeyId_example"; // String | The ID of the access key to update.
+AccessKey body = new AccessKey(); // AccessKey | New access key attributes to store.
+try {
+ AccessKey result = apiInstance.updateApplicationAccessKey(applicationId, accessKeyId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountApplicationsApi#updateApplicationAccessKey");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **applicationId** | **String**| The ID of the application. |
+ **accessKeyId** | **String**| The ID of the access key to update. |
+ **body** | [**AccessKey**](AccessKey.md)| New access key attributes to store. |
+
+### Return type
+
+[**AccessKey**](AccessKey.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountCreationReq.md b/backends/pelioncloud_devicemanagement/docs/AccountCreationReq.md
index d3eb1ee6b..025b322eb 100644
--- a/backends/pelioncloud_devicemanagement/docs/AccountCreationReq.md
+++ b/backends/pelioncloud_devicemanagement/docs/AccountCreationReq.md
@@ -10,15 +10,15 @@ Name | Type | Description | Notes
**adminFullName** | **String** | The full name of the admin user to create. | [optional]
**adminName** | **String** | The username of the admin user to create. | [optional]
**adminPassword** | **String** | The password when creating a new user. Generated when not present in the request. | [optional]
-**aliases** | **List<String>** | An array of aliases. | [optional]
+**aliases** | **List<String>** | An array of aliases for the tenant account ID. The aliases must be globally unique. | [optional]
**businessModel** | [**BusinessModel**](BusinessModel.md) | | [optional]
**city** | **String** | The city part of the postal address. Required for commercial accounts only. | [optional]
-**company** | **String** | The name of the company. Required for commercial accounts only. | [optional]
+**company** | **String** | The name of the company used in billing. Required for commercial accounts only. | [optional]
**contact** | **String** | The name of the contact person for this account. Required for commercial accounts only. | [optional]
**contractNumber** | **String** | Contract number of the customer. | [optional]
**country** | **String** | The country part of the postal address. Required for commercial accounts only. | [optional]
**customerNumber** | **String** | Customer number of the customer. | [optional]
-**displayName** | **String** | The display name for the account. | [optional]
+**displayName** | **String** | The display name for the tenant account. | [optional]
**email** | **String** | The company email address for this account. Required for commercial accounts only. | [optional]
**endMarket** | **String** | The end market of the account to create. |
**phoneNumber** | **String** | The phone number of a representative of the company. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountCreationResp.md b/backends/pelioncloud_devicemanagement/docs/AccountCreationResp.md
new file mode 100644
index 000000000..f516f80f3
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/AccountCreationResp.md
@@ -0,0 +1,84 @@
+
+# AccountCreationResp
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**addressLine1** | **String** | Postal address line 1. | [optional]
+**addressLine2** | **String** | Postal address line 2. | [optional]
+**adminEmail** | **String** | The email address of the admin user created for this account. Present only in the response for account creation. | [optional]
+**adminFullName** | **String** | The full name of the admin user created for this account. Present only in the response for account creation. | [optional]
+**adminId** | **String** | The ID of the admin user created for this account. Present only in the response for the account creation. | [optional]
+**adminKey** | **String** | The admin API key created for this account. Present only in the response for account creation. | [optional]
+**adminName** | **String** | The username of the admin user created for this account. Present only in the response for account creation. | [optional]
+**adminPassword** | **String** | The password of the admin user created for this account. Present only in the response for account creation. | [optional]
+**aliases** | **List<String>** | An array of aliases for the tenant account ID. The aliases must be globally unique. | [optional]
+**businessModel** | [**BusinessModel**](BusinessModel.md) | | [optional]
+**businessModelHistory** | [**List<BusinessModelHistory>**](BusinessModelHistory.md) | Business model history for this account. | [optional]
+**city** | **String** | The city part of the postal address. | [optional]
+**company** | **String** | The name of the company used in billing. | [optional]
+**contact** | **String** | The name of the contact person for this account. | [optional]
+**contractNumber** | **String** | Contract number of the customer. | [optional]
+**country** | **String** | The country part of the postal address. | [optional]
+**createdAt** | [**DateTime**](DateTime.md) | Creation UTC time RFC3339. | [optional]
+**customFields** | **Map<String, String>** | Account's custom properties as key-value pairs. | [optional]
+**customerNumber** | **String** | Customer number of the customer. | [optional]
+**displayName** | **String** | The display name for the tenant account. | [optional]
+**email** | **String** | The company email address for this account. | [optional]
+**endMarket** | **String** | Account end market. | [optional]
+**etag** | **String** | API resource entity version. | [optional]
+**expiration** | [**DateTime**](DateTime.md) | Expiration time of the account, as UTC time RFC3339. | [optional]
+**expirationWarningThreshold** | **Integer** | Indicates how many days (1-180) before account expiration a notification email is sent. | [optional]
+**id** | **String** | Account ID. | [optional]
+**idleTimeout** | **Integer** | The reference token expiration time, in minutes, for this account. | [optional]
+**limitations** | [**List<AccountLimitation>**](AccountLimitation.md) | List of account limitation objects. | [optional]
+**limits** | **Map<String, String>** | DEPRECATED: Replaced by the limitations parameter. | [optional]
+**mfaStatus** | [**MfaStatusEnum**](#MfaStatusEnum) | The enforcement status of multi-factor authentication, either `enforced` or `optional`. | [optional]
+**notificationEmails** | **List<String>** | A list of notification email addresses. | [optional]
+**object** | [**ObjectEnum**](#ObjectEnum) | Entity name: always `account`. | [optional]
+**parentAccount** | [**ParentAccountInfo**](ParentAccountInfo.md) | Contact details of the parent account. | [optional]
+**parentId** | **String** | The ID of the parent account, if any. | [optional]
+**passwordPolicy** | [**PasswordPolicy**](PasswordPolicy.md) | The password policy for this account. | [optional]
+**passwordRecoveryExpiration** | **Integer** | Indicates for how many minutes a password recovery email is valid. | [optional]
+**phoneNumber** | **String** | The phone number of a company representative. | [optional]
+**policies** | [**List<FeaturePolicy>**](FeaturePolicy.md) | List of policies if requested. | [optional]
+**postalCode** | **String** | The postal code part of the postal address. | [optional]
+**reason** | **String** | A note with the reason for account status update. | [optional]
+**referenceNote** | **String** | A reference note for updating the status of the account. | [optional]
+**salesContact** | **String** | Email address of the sales contact. | [optional]
+**state** | **String** | The state part of the postal address. | [optional]
+**status** | [**StatusEnum**](#StatusEnum) | The status of the account. | [optional]
+**subAccounts** | [**List<AccountInfo>**](AccountInfo.md) | List of sub accounts. Not available for developer users. | [optional]
+**templateId** | **String** | Account template ID. | [optional]
+**tier** | **String** | The tier level of the account; `0`: free tier, `1`: commercial account, `2`: partner tier. Other values are reserved for the future. | [optional]
+**tierHistory** | [**List<TierHistory>**](TierHistory.md) | Tier history for this account. | [optional]
+**updatedAt** | [**DateTime**](DateTime.md) | Last update UTC time RFC3339. | [optional]
+**upgradedAt** | [**DateTime**](DateTime.md) | Time when upgraded to commercial account in UTC format RFC3339. | [optional]
+
+
+
+## Enum: MfaStatusEnum
+Name | Value
+---- | -----
+ENFORCED | "enforced"
+OPTIONAL | "optional"
+
+
+
+## Enum: ObjectEnum
+Name | Value
+---- | -----
+ACCOUNT | "account"
+
+
+
+## Enum: StatusEnum
+Name | Value
+---- | -----
+ENROLLING | "ENROLLING"
+ACTIVE | "ACTIVE"
+RESTRICTED | "RESTRICTED"
+SUSPENDED | "SUSPENDED"
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountEmailNotificationLogsApi.md b/backends/pelioncloud_devicemanagement/docs/AccountEmailNotificationLogsApi.md
index ebdcca628..22d786f8d 100644
--- a/backends/pelioncloud_devicemanagement/docs/AccountEmailNotificationLogsApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/AccountEmailNotificationLogsApi.md
@@ -4,16 +4,17 @@ All URIs are relative to *https://api.us-east-1.mbedcloud.com*
Method | HTTP request | Description
------------- | ------------- | -------------
-[**getNofificationEntries**](AccountEmailNotificationLogsApi.md#getNofificationEntries) | **GET** v3/accounts/me/notifications | Get notification events for an account.
+[**getNofificationEntries**](AccountEmailNotificationLogsApi.md#getNofificationEntries) | **GET** v3/accounts/me/notifications | Get logs of email notifications.
+[**getNofificationEntry**](AccountEmailNotificationLogsApi.md#getNofificationEntry) | **GET** v3/accounts/me/notifications/{notification_id} | Get an email notification.
# **getNofificationEntries**
> NotificationEntryList getNofificationEntries(limit, after, order)
-Get notification events for an account.
+Get logs of email notifications.
-Retrieve notifications for an account.
+Retrieve an array of email notification logs.
### Example
```java
@@ -34,8 +35,8 @@ Bearer.setApiKey("YOUR API KEY");
AccountEmailNotificationLogsApi apiInstance = new AccountEmailNotificationLogsApi();
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
try {
NotificationEntryList result = apiInstance.getNofificationEntries(limit, after, order);
System.out.println(result);
@@ -50,8 +51,8 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
### Return type
@@ -66,3 +67,58 @@ Name | Type | Description | Notes
- **Content-Type**: Not defined
- **Accept**: application/json
+
+# **getNofificationEntry**
+> NotificationEntry getNofificationEntry(notificationId)
+
+Get an email notification.
+
+Retrieve an email notification log entry.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountEmailNotificationLogsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountEmailNotificationLogsApi apiInstance = new AccountEmailNotificationLogsApi();
+String notificationId = "notificationId_example"; // String | The ID of the log entry to be retrieved.
+try {
+ NotificationEntry result = apiInstance.getNofificationEntry(notificationId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountEmailNotificationLogsApi#getNofificationEntry");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **notificationId** | **String**| The ID of the log entry to be retrieved. |
+
+### Return type
+
+[**NotificationEntry**](NotificationEntry.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountEntitlementLimitationsApi.md b/backends/pelioncloud_devicemanagement/docs/AccountEntitlementLimitationsApi.md
new file mode 100644
index 000000000..fe4304a57
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/AccountEntitlementLimitationsApi.md
@@ -0,0 +1,120 @@
+# AccountEntitlementLimitationsApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**getAccountLimitation**](AccountEntitlementLimitationsApi.md#getAccountLimitation) | **GET** v3/limitations/{limitation_id} | Get an entitlement limitation.
+[**getAccountLimitations**](AccountEntitlementLimitationsApi.md#getAccountLimitations) | **GET** v3/limitations | Get entitlement limitations.
+
+
+
+# **getAccountLimitation**
+> AccountLimitation getAccountLimitation(limitationId)
+
+Get an entitlement limitation.
+
+Retrieve an entitlement limitation.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountEntitlementLimitationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountEntitlementLimitationsApi apiInstance = new AccountEntitlementLimitationsApi();
+String limitationId = "limitationId_example"; // String | The ID of the limitation to be fetched.
+try {
+ AccountLimitation result = apiInstance.getAccountLimitation(limitationId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountEntitlementLimitationsApi#getAccountLimitation");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **limitationId** | **String**| The ID of the limitation to be fetched. |
+
+### Return type
+
+[**AccountLimitation**](AccountLimitation.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getAccountLimitations**
+> AccountLimitationList getAccountLimitations(inheritedEq)
+
+Get entitlement limitations.
+
+Retrieve an array of entitlement limitations.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountEntitlementLimitationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountEntitlementLimitationsApi apiInstance = new AccountEntitlementLimitationsApi();
+String inheritedEq = "inheritedEq_example"; // String | Filter for finding account limitations by inheritance. True returns also inherited limitations. False returns only non-inherited ones.
+try {
+ AccountLimitationList result = apiInstance.getAccountLimitations(inheritedEq);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountEntitlementLimitationsApi#getAccountLimitations");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **inheritedEq** | **String**| Filter for finding account limitations by inheritance. True returns also inherited limitations. False returns only non-inherited ones. | [optional]
+
+### Return type
+
+[**AccountLimitationList**](AccountLimitationList.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountIdentityProvidersApi.md b/backends/pelioncloud_devicemanagement/docs/AccountIdentityProvidersApi.md
index 0d2cf5934..04d022a40 100644
--- a/backends/pelioncloud_devicemanagement/docs/AccountIdentityProvidersApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/AccountIdentityProvidersApi.md
@@ -9,7 +9,7 @@ Method | HTTP request | Description
[**deleteSpCertificate**](AccountIdentityProvidersApi.md#deleteSpCertificate) | **POST** v3/identity-providers/{identity_provider_id}/delete-sp-certificate | Delete the service provider certificate.
[**generateSpCertificate**](AccountIdentityProvidersApi.md#generateSpCertificate) | **POST** v3/identity-providers/{identity_provider_id}/generate-sp-certificate | Generate a new service provider certificate.
[**getAllIdentityProviders**](AccountIdentityProvidersApi.md#getAllIdentityProviders) | **GET** v3/identity-providers | Get all identity providers.
-[**getIdentityProvider**](AccountIdentityProvidersApi.md#getIdentityProvider) | **GET** v3/identity-providers/{identity_provider_id} | Get identity provider by ID.
+[**getIdentityProvider**](AccountIdentityProvidersApi.md#getIdentityProvider) | **GET** v3/identity-providers/{identity_provider_id} | Get identity provider.
[**refreshJwks**](AccountIdentityProvidersApi.md#refreshJwks) | **POST** v3/identity-providers/{identity_provider_id}/refresh-jwks | Refreshes the OIDC signing keys.
[**updateIdentityProvider**](AccountIdentityProvidersApi.md#updateIdentityProvider) | **PUT** v3/identity-providers/{identity_provider_id} | Update an existing identity provider.
@@ -20,7 +20,7 @@ Method | HTTP request | Description
Create a new identity provider.
-Create a new identity provider.
+Create a new identity provider. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -77,7 +77,7 @@ Name | Type | Description | Notes
Delete an identity provider by ID.
-Delete an identity provider by ID.
+Delete an identity provider by ID. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -132,7 +132,7 @@ Name | Type | Description | Notes
Delete the service provider certificate.
-Delete a service provider certificate.
+Delete a service provider certificate. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -187,7 +187,7 @@ Name | Type | Description | Notes
Generate a new service provider certificate.
-Generate a new service provider certificate.
+Generate a new service provider certificate. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -244,7 +244,7 @@ Name | Type | Description | Notes
Get all identity providers.
-Retrieve identity providers in an array.
+Retrieve an array of identity providers. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -265,8 +265,8 @@ Bearer.setApiKey("YOUR API KEY");
AccountIdentityProvidersApi apiInstance = new AccountIdentityProvidersApi();
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
try {
IdentityProviderList result = apiInstance.getAllIdentityProviders(limit, after, order, include);
@@ -282,8 +282,8 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
### Return type
@@ -303,9 +303,9 @@ Name | Type | Description | Notes
# **getIdentityProvider**
> IdentityProviderInfo getIdentityProvider(identityProviderId)
-Get identity provider by ID.
+Get identity provider.
-Retrieve by ID.
+Retrieve an identity provider. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -360,7 +360,7 @@ Name | Type | Description | Notes
Refreshes the OIDC signing keys.
-Refreshes an OIDC IdP's signing keys.
+Refreshes an OIDC IdP's signing keys. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -415,7 +415,7 @@ Name | Type | Description | Notes
Update an existing identity provider.
-Update an existing identity provider.
+Update an existing identity provider. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountInfo.md b/backends/pelioncloud_devicemanagement/docs/AccountInfo.md
index 4e728ec4d..733dda5ed 100644
--- a/backends/pelioncloud_devicemanagement/docs/AccountInfo.md
+++ b/backends/pelioncloud_devicemanagement/docs/AccountInfo.md
@@ -6,24 +6,18 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**addressLine1** | **String** | Postal address line 1. | [optional]
**addressLine2** | **String** | Postal address line 2. | [optional]
-**adminEmail** | **String** | The email address of the admin user created for this account. Present only in the response for account creation. | [optional]
-**adminFullName** | **String** | The full name of the admin user created for this account. Present only in the response for account creation. | [optional]
-**adminId** | **String** | The ID of the admin user created for this account. Present only in the response for the account creation. | [optional]
-**adminKey** | **String** | The admin API key created for this account. Present only in the response for account creation. | [optional]
-**adminName** | **String** | The username of the admin user created for this account. Present only in the response for account creation. | [optional]
-**adminPassword** | **String** | The password of the admin user created for this account. Present only in the response for account creation. | [optional]
-**aliases** | **List<String>** | An array of aliases. | [optional]
+**aliases** | **List<String>** | An array of aliases for the tenant account ID. The aliases must be globally unique. | [optional]
**businessModel** | [**BusinessModel**](BusinessModel.md) | | [optional]
**businessModelHistory** | [**List<BusinessModelHistory>**](BusinessModelHistory.md) | Business model history for this account. | [optional]
**city** | **String** | The city part of the postal address. | [optional]
-**company** | **String** | The name of the company. | [optional]
+**company** | **String** | The name of the company used in billing. | [optional]
**contact** | **String** | The name of the contact person for this account. | [optional]
**contractNumber** | **String** | Contract number of the customer. | [optional]
**country** | **String** | The country part of the postal address. | [optional]
**createdAt** | [**DateTime**](DateTime.md) | Creation UTC time RFC3339. | [optional]
**customFields** | **Map<String, String>** | Account's custom properties as key-value pairs. | [optional]
**customerNumber** | **String** | Customer number of the customer. | [optional]
-**displayName** | **String** | The display name for the account. | [optional]
+**displayName** | **String** | The display name for the tenant account. | [optional]
**email** | **String** | The company email address for this account. | [optional]
**endMarket** | **String** | Account end market. |
**etag** | **String** | API resource entity version. |
@@ -32,7 +26,7 @@ Name | Type | Description | Notes
**id** | **String** | Account ID. |
**idleTimeout** | **Integer** | The reference token expiration time, in minutes, for this account. | [optional]
**limitations** | [**List<AccountLimitation>**](AccountLimitation.md) | List of account limitation objects. | [optional]
-**limits** | **Map<String, String>** | List of limits as key-value pairs if requested. | [optional]
+**limits** | **Map<String, String>** | DEPRECATED: Replaced by the limitations parameter. | [optional]
**mfaStatus** | [**MfaStatusEnum**](#MfaStatusEnum) | The enforcement status of multi-factor authentication, either `enforced` or `optional`. | [optional]
**notificationEmails** | **List<String>** | A list of notification email addresses. | [optional]
**object** | [**ObjectEnum**](#ObjectEnum) | Entity name: always `account`. |
@@ -51,6 +45,7 @@ Name | Type | Description | Notes
**subAccounts** | [**List<AccountInfo>**](AccountInfo.md) | List of sub accounts. Not available for developer users. | [optional]
**templateId** | **String** | Account template ID. | [optional]
**tier** | **String** | The tier level of the account; `0`: free tier, `1`: commercial account, `2`: partner tier. Other values are reserved for the future. |
+**tierHistory** | [**List<TierHistory>**](TierHistory.md) | Tier history for this account. | [optional]
**updatedAt** | [**DateTime**](DateTime.md) | Last update UTC time RFC3339. | [optional]
**upgradedAt** | [**DateTime**](DateTime.md) | Time when upgraded to commercial account in UTC format RFC3339. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountInfoList.md b/backends/pelioncloud_devicemanagement/docs/AccountInfoList.md
index 7ed3fa0eb..a447912f3 100644
--- a/backends/pelioncloud_devicemanagement/docs/AccountInfoList.md
+++ b/backends/pelioncloud_devicemanagement/docs/AccountInfoList.md
@@ -4,7 +4,7 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**after** | **String** | The entity ID to fetch after the given one. | [optional]
+**after** | **String** | The entity ID to retrieve after the given one. | [optional]
**data** | [**List<AccountInfo>**](AccountInfo.md) | A list of entities. |
**hasMore** | **Boolean** | Flag indicating whether there are more results. |
**limit** | **Integer** | The number of results to return (2-1000), or equal to `total_count`. |
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountLimitation.md b/backends/pelioncloud_devicemanagement/docs/AccountLimitation.md
index 866fa89c4..13c27710f 100644
--- a/backends/pelioncloud_devicemanagement/docs/AccountLimitation.md
+++ b/backends/pelioncloud_devicemanagement/docs/AccountLimitation.md
@@ -11,36 +11,29 @@ Name | Type | Description | Notes
**id** | **String** | Entity ID. | [optional]
**inherited** | **Boolean** | Flag indicating whether this limitation is inherited. | [optional]
**inheritedFrom** | **String** | Indicates where this limit is inherited from. | [optional]
-**inheritedType** | **String** | Indicates the type of the entity where the limitation is inherited from. | [optional]
-**limit** | **Integer** | The value of the limit. | [optional]
+**inheritedType** | [**InheritedTypeEnum**](#InheritedTypeEnum) | Indicates the type of the entity where the limitation is inherited from. | [optional]
+**inheritedValue** | [**AccountLimitationInheritedValue**](AccountLimitationInheritedValue.md) | | [optional]
+**limit** | **Long** | The value of the limit. | [optional]
**name** | **String** | Name of the account limitation. | [optional]
**object** | [**ObjectEnum**](#ObjectEnum) | Entity name: always 'limitation' | [optional]
-**quota** | **Integer** | Quota of the account limitation. | [optional]
+**quota** | **Long** | Quota of the account limitation. | [optional]
**updatedAt** | [**DateTime**](DateTime.md) | Last update UTC time RFC3339. | [optional]
+
+## Enum: InheritedTypeEnum
+Name | Value
+---- | -----
+ACCOUNT | "account"
+TEMPLATE | "template"
+TIER_TEMPLATE | "tier_template"
+
+
## Enum: ObjectEnum
Name | Value
---- | -----
-USER | "user"
-API_KEY | "api-key"
-GROUP | "group"
-ACCOUNT | "account"
-ACCOUNT_TEMPLATE | "account_template"
-TRUSTED_CERT | "trusted_cert"
-LIST | "list"
-ERROR | "error"
-AGREEMENT | "agreement"
-SIGNED_AGREEMENT | "signed_agreement"
-POLICY | "policy"
LIMITATION | "limitation"
-IDENTITY_PROVIDER | "identity_provider"
-USER_SESSION | "user_session"
-USER_INVITATION | "user_invitation"
-NOTIFICATION_ENTRY | "notification_entry"
-BRANDING_COLOR | "branding_color"
-BRANDING_IMAGE | "branding_image"
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountLimitationInheritedValue.md b/backends/pelioncloud_devicemanagement/docs/AccountLimitationInheritedValue.md
new file mode 100644
index 000000000..2b043ac13
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/AccountLimitationInheritedValue.md
@@ -0,0 +1,12 @@
+
+# AccountLimitationInheritedValue
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**billingPeriod** | **Integer** | Default billing period of the account limitation as defined in the parent entity. | [optional]
+**limit** | **Long** | Default value of the limit as defined in the parent entity. | [optional]
+**quota** | **Long** | Default quota as defined in the parent entity. | [optional]
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountLimitationList.md b/backends/pelioncloud_devicemanagement/docs/AccountLimitationList.md
index bedd99ae6..427888a37 100644
--- a/backends/pelioncloud_devicemanagement/docs/AccountLimitationList.md
+++ b/backends/pelioncloud_devicemanagement/docs/AccountLimitationList.md
@@ -4,7 +4,7 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**after** | **String** | The entity ID to fetch after the given one. | [optional]
+**after** | **String** | The entity ID to retrieve after the given one. | [optional]
**data** | [**List<AccountLimitation>**](AccountLimitation.md) | A list of entities. |
**hasMore** | **Boolean** | Flag indicating whether there is more results. |
**limit** | **Integer** | The number of results to return, (range: 2-1000), or equals to `total_count` |
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountPolicyGroupsApi.md b/backends/pelioncloud_devicemanagement/docs/AccountPolicyGroupsApi.md
index 72ce2963c..c18f86e27 100644
--- a/backends/pelioncloud_devicemanagement/docs/AccountPolicyGroupsApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/AccountPolicyGroupsApi.md
@@ -6,17 +6,20 @@ Method | HTTP request | Description
------------- | ------------- | -------------
[**addApiKeysToGroup**](AccountPolicyGroupsApi.md#addApiKeysToGroup) | **POST** v3/policy-groups/{group_id}/api-keys | Add API keys to the group.
[**addListedApiKeysToGroup**](AccountPolicyGroupsApi.md#addListedApiKeysToGroup) | **POST** v3/policy-groups/{group_id}/api-keys/add | Add API Keys to the group.
+[**addListedApplicationsToGroup**](AccountPolicyGroupsApi.md#addListedApplicationsToGroup) | **POST** v3/policy-groups/{group_id}/applications/add | Add applications to the group.
[**addListedUsersToGroup_**](AccountPolicyGroupsApi.md#addListedUsersToGroup_) | **POST** v3/policy-groups/{group_id}/users/add | Add users to the group.
[**addSubjectsToGroup**](AccountPolicyGroupsApi.md#addSubjectsToGroup) | **POST** v3/policy-groups/{group_id} | Add members to a group.
[**addUsersToGroup_**](AccountPolicyGroupsApi.md#addUsersToGroup_) | **POST** v3/policy-groups/{group_id}/users | Add users to the group.
[**createGroup**](AccountPolicyGroupsApi.md#createGroup) | **POST** v3/policy-groups | Create a new group.
[**deleteGroup**](AccountPolicyGroupsApi.md#deleteGroup) | **DELETE** v3/policy-groups/{group_id} | Delete a group.
-[**getAllGroups**](AccountPolicyGroupsApi.md#getAllGroups) | **GET** v3/policy-groups | Get all group information.
-[**getApiKeysOfGroup**](AccountPolicyGroupsApi.md#getApiKeysOfGroup) | **GET** v3/policy-groups/{group_id}/api-keys | Get the API keys of a group.
-[**getGroupSummary**](AccountPolicyGroupsApi.md#getGroupSummary) | **GET** v3/policy-groups/{group_id} | Get group information.
-[**getUsersOfGroup**](AccountPolicyGroupsApi.md#getUsersOfGroup) | **GET** v3/policy-groups/{group_id}/users | Get users of a group.
+[**getAllGroups**](AccountPolicyGroupsApi.md#getAllGroups) | **GET** v3/policy-groups | Get policy groups.
+[**getApiKeysOfGroup**](AccountPolicyGroupsApi.md#getApiKeysOfGroup) | **GET** v3/policy-groups/{group_id}/api-keys | Get the API keys of a policy group.
+[**getApplicationsOfGroup**](AccountPolicyGroupsApi.md#getApplicationsOfGroup) | **GET** v3/policy-groups/{group_id}/applications | Get the applications of a policy group.
+[**getGroupSummary**](AccountPolicyGroupsApi.md#getGroupSummary) | **GET** v3/policy-groups/{group_id} | Get a policy group.
+[**getUsersOfGroup**](AccountPolicyGroupsApi.md#getUsersOfGroup) | **GET** v3/policy-groups/{group_id}/users | Get users of a policy group.
[**removeApiKeysFromGroup**](AccountPolicyGroupsApi.md#removeApiKeysFromGroup) | **DELETE** v3/policy-groups/{group_id}/api-keys | Remove API keys from a group.
[**removeListedApiKeysFromGroup**](AccountPolicyGroupsApi.md#removeListedApiKeysFromGroup) | **POST** v3/policy-groups/{group_id}/api-keys/remove | Remove API keys from a group.
+[**removeListedApplicationsFromGroup**](AccountPolicyGroupsApi.md#removeListedApplicationsFromGroup) | **POST** v3/policy-groups/{group_id}/applications/remove | Remove applications from a group.
[**removeListedUsersFromGroup**](AccountPolicyGroupsApi.md#removeListedUsersFromGroup) | **POST** v3/policy-groups/{group_id}/users/remove | Remove users from a group.
[**removeUsersFromGroup**](AccountPolicyGroupsApi.md#removeUsersFromGroup) | **DELETE** v3/policy-groups/{group_id}/users | Remove users from a group.
[**updateGroupName**](AccountPolicyGroupsApi.md#updateGroupName) | **PUT** v3/policy-groups/{group_id} | Update the group name.
@@ -28,7 +31,7 @@ Method | HTTP request | Description
Add API keys to the group.
-Add API keys to the group. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/api-keys \\ -H 'Authorization: Bearer <api_key>' ```
+Add API keys to the group. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/api-keys \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"apikeys\" : [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }' ```
### Example
```java
@@ -85,7 +88,7 @@ Name | Type | Description | Notes
Add API Keys to the group.
-Add API keys to the group. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/api-keys \\ -H 'Authorization: Bearer <api_key>' ```
+Add API keys to the group. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/api-keys/add \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"apikeys\" : [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }' ```
### Example
```java
@@ -131,6 +134,63 @@ Name | Type | Description | Notes
[Bearer](../README.md#Bearer)
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **addListedApplicationsToGroup**
+> GroupSummary addListedApplicationsToGroup(groupId, body)
+
+Add applications to the group.
+
+Add applications to the group. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/applications/remove \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"applications\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountPolicyGroupsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountPolicyGroupsApi apiInstance = new AccountPolicyGroupsApi();
+String groupId = "groupId_example"; // String | The ID of the group.
+SubjectList body = new SubjectList(); // SubjectList | A list of applications to add to the group.
+try {
+ GroupSummary result = apiInstance.addListedApplicationsToGroup(groupId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountPolicyGroupsApi#addListedApplicationsToGroup");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **groupId** | **String**| The ID of the group. |
+ **body** | [**SubjectList**](SubjectList.md)| A list of applications to add to the group. |
+
+### Return type
+
+[**GroupSummary**](GroupSummary.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
### HTTP request headers
- **Content-Type**: Not defined
@@ -142,7 +202,7 @@ Name | Type | Description | Notes
Add users to the group.
-Add users to the group. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/users/add \\ -H 'Authorization: Bearer <api_key>' ```
+Add users to the group. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/users/add \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"users\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }' ```
### Example
```java
@@ -199,7 +259,7 @@ Name | Type | Description | Notes
Add members to a group.
-Add users and API keys to a group. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id} \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"users\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]}' ```
+Add users and API keys to a group. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id} \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"users\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]}' ```
### Example
```java
@@ -256,7 +316,7 @@ Name | Type | Description | Notes
Add users to the group.
-Add users to the group. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/users \\ -H 'Authorization: Bearer <api_key>' ```
+Add users to the group. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/users \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"users\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }' ```
### Example
```java
@@ -313,7 +373,7 @@ Name | Type | Description | Notes
Create a new group.
-Create a new group. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' -d '{\"name\": \"MyGroup1\"}' ```
+Create a new group. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' -d '{\"name\": \"MyGroup1\"}' ```
### Example
```java
@@ -368,7 +428,7 @@ Name | Type | Description | Notes
Delete a group.
-Delete a group. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id} \\ -H 'Authorization: Bearer <api_key>' ```
+Delete a group. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -421,9 +481,9 @@ Name | Type | Description | Notes
# **getAllGroups**
> GroupSummaryList getAllGroups(limit, after, order, include, nameEq)
-Get all group information.
+Get policy groups.
-Retrieve all group information. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/policy-groups \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve an array of policy groups. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/policy-groups \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -444,8 +504,8 @@ Bearer.setApiKey("YOUR API KEY");
AccountPolicyGroupsApi apiInstance = new AccountPolicyGroupsApi();
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
String nameEq = "nameEq_example"; // String | Filter for group name.
try {
@@ -462,8 +522,8 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
**nameEq** | **String**| Filter for group name. | [optional]
@@ -484,9 +544,9 @@ Name | Type | Description | Notes
# **getApiKeysOfGroup**
> ApiKeyInfoRespList getApiKeysOfGroup(groupId, limit, after, order, include)
-Get the API keys of a group.
+Get the API keys of a policy group.
-Manage policy groups. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/api-keys \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve an array of API keys associated with a policy group. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/api-keys \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -508,8 +568,8 @@ Bearer.setApiKey("YOUR API KEY");
AccountPolicyGroupsApi apiInstance = new AccountPolicyGroupsApi();
String groupId = "groupId_example"; // String | The ID of the group.
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
try {
ApiKeyInfoRespList result = apiInstance.getApiKeysOfGroup(groupId, limit, after, order, include);
@@ -526,8 +586,8 @@ Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**groupId** | **String**| The ID of the group. |
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
### Return type
@@ -538,6 +598,69 @@ Name | Type | Description | Notes
[Bearer](../README.md#Bearer)
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getApplicationsOfGroup**
+> ApplicationList getApplicationsOfGroup(groupId, limit, after, order, include)
+
+Get the applications of a policy group.
+
+Retrieve an array of applications associated with a policy group. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/applications \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountPolicyGroupsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountPolicyGroupsApi apiInstance = new AccountPolicyGroupsApi();
+String groupId = "groupId_example"; // String | The ID of the group.
+Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
+String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
+try {
+ ApplicationList result = apiInstance.getApplicationsOfGroup(groupId, limit, after, order, include);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountPolicyGroupsApi#getApplicationsOfGroup");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **groupId** | **String**| The ID of the group. |
+ **limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
+
+### Return type
+
+[**ApplicationList**](ApplicationList.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
### HTTP request headers
- **Content-Type**: Not defined
@@ -547,9 +670,9 @@ Name | Type | Description | Notes
# **getGroupSummary**
> GroupSummary getGroupSummary(groupId)
-Get group information.
+Get a policy group.
-Retrieve general information about a group. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id} \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve a policy group. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -569,7 +692,7 @@ Bearer.setApiKey("YOUR API KEY");
//Bearer.setApiKeyPrefix("Token");
AccountPolicyGroupsApi apiInstance = new AccountPolicyGroupsApi();
-String groupId = "groupId_example"; // String | The ID of the group to retrieve.
+String groupId = "groupId_example"; // String | The ID of the policy group to retrieve.
try {
GroupSummary result = apiInstance.getGroupSummary(groupId);
System.out.println(result);
@@ -583,7 +706,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **groupId** | **String**| The ID of the group to retrieve. |
+ **groupId** | **String**| The ID of the policy group to retrieve. |
### Return type
@@ -602,9 +725,9 @@ Name | Type | Description | Notes
# **getUsersOfGroup**
> UserInfoRespList getUsersOfGroup(groupId, limit, after, order, include, statusEq, statusIn, statusNin)
-Get users of a group.
+Get users of a policy group.
-Retrieve users of a group with details. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/users \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve an array of users associated with a policy group. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/users \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -626,8 +749,8 @@ Bearer.setApiKey("YOUR API KEY");
AccountPolicyGroupsApi apiInstance = new AccountPolicyGroupsApi();
String groupId = "groupId_example"; // String | The ID of the group.
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
String statusEq = "statusEq_example"; // String | An optional filter to retrieve users by status.
String statusIn = "statusIn_example"; // String | An optional filter to retrieve users with a specified set of statuses.
@@ -647,8 +770,8 @@ Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**groupId** | **String**| The ID of the group. |
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
**statusEq** | **String**| An optional filter to retrieve users by status. | [optional]
**statusIn** | **String**| An optional filter to retrieve users with a specified set of statuses. | [optional]
@@ -673,7 +796,7 @@ Name | Type | Description | Notes
Remove API keys from a group.
-Remove API keys from groups. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/api-keys \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Remove API keys from groups. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/api-keys \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"apikeys\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }' ```
### Example
```java
@@ -730,7 +853,7 @@ Name | Type | Description | Notes
Remove API keys from a group.
-Remove API keys from groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/api-keys/remove \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Remove API keys from groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/api-keys/remove \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"apikeys\" : [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }' ```
### Example
```java
@@ -776,6 +899,63 @@ Name | Type | Description | Notes
[Bearer](../README.md#Bearer)
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+
+# **removeListedApplicationsFromGroup**
+> GroupSummary removeListedApplicationsFromGroup(groupId, body)
+
+Remove applications from a group.
+
+Remove applications from groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/applications/remove \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"applications\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountPolicyGroupsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+AccountPolicyGroupsApi apiInstance = new AccountPolicyGroupsApi();
+String groupId = "groupId_example"; // String | The ID of the group.
+SubjectList body = new SubjectList(); // SubjectList | A list of applications to remove from the group.
+try {
+ GroupSummary result = apiInstance.removeListedApplicationsFromGroup(groupId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling AccountPolicyGroupsApi#removeListedApplicationsFromGroup");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **groupId** | **String**| The ID of the group. |
+ **body** | [**SubjectList**](SubjectList.md)| A list of applications to remove from the group. |
+
+### Return type
+
+[**GroupSummary**](GroupSummary.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
### HTTP request headers
- **Content-Type**: application/json
@@ -787,7 +967,7 @@ Name | Type | Description | Notes
Remove users from a group.
-Manage policy groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/users/remove \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Remove users from a policy group. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/users/remove \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"users\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }' ```
### Example
```java
@@ -844,7 +1024,7 @@ Name | Type | Description | Notes
Remove users from a group.
-Manage policy groups. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/users \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Manage policy groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/users \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"users\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }' ```
### Example
```java
@@ -901,7 +1081,7 @@ Name | Type | Description | Notes
Update the group name.
-Update a group name. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id} \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\": \"TestGroup2\"}' ```
+Update a group name. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id} \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\": \"TestGroup2\"}' ```
### Example
```java
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountProfileApi.md b/backends/pelioncloud_devicemanagement/docs/AccountProfileApi.md
index 050a5bbba..dde6b4b53 100644
--- a/backends/pelioncloud_devicemanagement/docs/AccountProfileApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/AccountProfileApi.md
@@ -4,7 +4,7 @@ All URIs are relative to *https://api.us-east-1.mbedcloud.com*
Method | HTTP request | Description
------------- | ------------- | -------------
-[**getMyAccountInfo**](AccountProfileApi.md#getMyAccountInfo) | **GET** v3/accounts/me | Get account info.
+[**getMyAccountInfo**](AccountProfileApi.md#getMyAccountInfo) | **GET** v3/accounts/me | Get account information.
[**updateMyAccount**](AccountProfileApi.md#updateMyAccount) | **PUT** v3/accounts/me | Updates attributes of the account.
@@ -12,9 +12,9 @@ Method | HTTP request | Description
# **getMyAccountInfo**
> AccountInfo getMyAccountInfo(include, properties)
-Get account info.
+Get account information.
-Retrieve detailed information about the account. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/me?include=policies \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve information about the account. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/me?include=policies \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -71,7 +71,7 @@ Name | Type | Description | Notes
Updates attributes of the account.
-Update the account. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/me \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"phone_number\": \"12345678\"}' ```
+Update the account. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/me \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"phone_number\": \"12345678\"}' ```
### Example
```java
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountResponse.md b/backends/pelioncloud_devicemanagement/docs/AccountResponse.md
new file mode 100644
index 000000000..5460b3797
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/AccountResponse.md
@@ -0,0 +1,25 @@
+
+# AccountResponse
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**alias** | **String** | Alias of the account. | [optional]
+**displayName** | **String** | The display name for the account. | [optional]
+**id** | **String** | The UUID of the account. | [optional]
+**loginProfiles** | [**List<LoginProfile>**](LoginProfile.md) | A list of login profiles for the user in the account. | [optional]
+**parentId** | **String** | The UUID of the parent account, if it has any. | [optional]
+**status** | [**StatusEnum**](#StatusEnum) | The status of the account. | [optional]
+
+
+
+## Enum: StatusEnum
+Name | Value
+---- | -----
+ENROLLING | "ENROLLING"
+ACTIVE | "ACTIVE"
+RESTRICTED | "RESTRICTED"
+SUSPENDED | "SUSPENDED"
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountResponseList.md b/backends/pelioncloud_devicemanagement/docs/AccountResponseList.md
new file mode 100644
index 000000000..4e7bb71c3
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/AccountResponseList.md
@@ -0,0 +1,31 @@
+
+# AccountResponseList
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**after** | **String** | The entity ID to fetch after the given one. | [optional]
+**data** | [**List<AccountResponse>**](AccountResponse.md) | A list of entities. | [optional]
+**hasMore** | **Boolean** | Flag indicating whether there is more results. | [optional]
+**limit** | **Integer** | The number of results to return, (range: 2-1000), or equals to `total_count` | [optional]
+**object** | [**ObjectEnum**](#ObjectEnum) | Entity name: always 'list' | [optional]
+**order** | [**OrderEnum**](#OrderEnum) | The order of the records to return based on creation time. Available values: ASC, DESC; by default ASC. | [optional]
+**totalCount** | **Integer** | The total number or records, if requested. It might be returned also for small lists. | [optional]
+
+
+
+## Enum: ObjectEnum
+Name | Value
+---- | -----
+LIST | "list"
+
+
+
+## Enum: OrderEnum
+Name | Value
+---- | -----
+ASC | "ASC"
+DESC | "DESC"
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountUpdateReq.md b/backends/pelioncloud_devicemanagement/docs/AccountUpdateReq.md
index ccb7fffbf..6d02f9c95 100644
--- a/backends/pelioncloud_devicemanagement/docs/AccountUpdateReq.md
+++ b/backends/pelioncloud_devicemanagement/docs/AccountUpdateReq.md
@@ -6,13 +6,13 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**addressLine1** | **String** | Postal address line 1. Required for commercial accounts only. | [optional]
**addressLine2** | **String** | Postal address line 2. | [optional]
-**aliases** | **List<String>** | An array of aliases. | [optional]
+**aliases** | **List<String>** | An array of aliases for the tenant account ID. The aliases must be globally unique. | [optional]
**city** | **String** | The city part of the postal address. Required for commercial accounts only. | [optional]
-**company** | **String** | The name of the company. Required for commercial accounts only. | [optional]
+**company** | **String** | The name of the company used in billing. Required for commercial accounts only. | [optional]
**contact** | **String** | The name of the contact person for this account. Required for commercial accounts only. | [optional]
**country** | **String** | The country part of the postal address. Required for commercial accounts only. | [optional]
**customFields** | **Map<String, String>** | Account's custom properties as key-value pairs. | [optional]
-**displayName** | **String** | The display name for the account. | [optional]
+**displayName** | **String** | The display name for the tenant account. | [optional]
**email** | **String** | The company email address for this account. Required for commercial accounts only. | [optional]
**endMarket** | **String** | The end market for this account. | [optional]
**expirationWarningThreshold** | **Integer** | Indicates how many days before account expiration a notification email is sent. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountUpdateRootReq.md b/backends/pelioncloud_devicemanagement/docs/AccountUpdateRootReq.md
index 9f441c5de..4cf859d93 100644
--- a/backends/pelioncloud_devicemanagement/docs/AccountUpdateRootReq.md
+++ b/backends/pelioncloud_devicemanagement/docs/AccountUpdateRootReq.md
@@ -6,16 +6,16 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**addressLine1** | **String** | Postal address line 1. Required for commercial accounts only. | [optional]
**addressLine2** | **String** | Postal address line 2. | [optional]
-**aliases** | **List<String>** | An array of aliases. | [optional]
+**aliases** | **List<String>** | An array of aliases for the tenant account ID. The aliases must be globally unique. | [optional]
**businessModel** | [**BusinessModel**](BusinessModel.md) | | [optional]
**city** | **String** | The city part of the postal address. Required for commercial accounts only. | [optional]
-**company** | **String** | The name of the company. Required for commercial accounts only. | [optional]
+**company** | **String** | The name of the company used in billing. Required for commercial accounts only. | [optional]
**contact** | **String** | The name of the contact person for this account. Required for commercial accounts only. | [optional]
-**contractNumber** | **String** | Contract number of the customer. | [optional]
+**contractNumber** | **String** | Contract number of the customer. An administrator can set this property on tenant accounts only. | [optional]
**country** | **String** | The country part of the postal address. Required for commercial accounts only. | [optional]
**customFields** | **Map<String, String>** | Account's custom properties as key-value pairs. | [optional]
-**customerNumber** | **String** | Customer number of the customer. | [optional]
-**displayName** | **String** | The display name for the account. | [optional]
+**customerNumber** | **String** | Customer number of the customer. An administrator can set this property on tenant accounts only. | [optional]
+**displayName** | **String** | The display name for the tenant account. | [optional]
**email** | **String** | The company email address for this account. Required for commercial accounts only. | [optional]
**endMarket** | **String** | The end market for this account. | [optional]
**expirationWarningThreshold** | **Integer** | Indicates how many days before account expiration a notification email is sent. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountUserInvitationsApi.md b/backends/pelioncloud_devicemanagement/docs/AccountUserInvitationsApi.md
index f79c66102..8e79f908e 100644
--- a/backends/pelioncloud_devicemanagement/docs/AccountUserInvitationsApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/AccountUserInvitationsApi.md
@@ -6,7 +6,7 @@ Method | HTTP request | Description
------------- | ------------- | -------------
[**createInvitation**](AccountUserInvitationsApi.md#createInvitation) | **POST** v3/user-invitations | Create a user invitation.
[**deleteInvitation**](AccountUserInvitationsApi.md#deleteInvitation) | **DELETE** v3/user-invitations/{invitation_id} | Delete a user invitation.
-[**getAllInvitations**](AccountUserInvitationsApi.md#getAllInvitations) | **GET** v3/user-invitations | Get the details of all user invitations.
+[**getAllInvitations**](AccountUserInvitationsApi.md#getAllInvitations) | **GET** v3/user-invitations | Get user invitations.
[**getInvitation**](AccountUserInvitationsApi.md#getInvitation) | **GET** v3/user-invitations/{invitation_id} | Details of a user invitation.
@@ -16,7 +16,7 @@ Method | HTTP request | Description
Create a user invitation.
-Invite a new or existing user. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/user-invitations \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d {\"email\": \"myemail@company.com\"} ```
+Invite a new or existing user. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/user-invitations \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d {\"email\": \"myemail@company.com\"} ```
### Example
```java
@@ -71,7 +71,7 @@ Name | Type | Description | Notes
Delete a user invitation.
-Delete an active user invitation sent to a new or existing user. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/user-invitations/{invitation_id} \\ -H 'Authorization: Bearer <api_key>' ```
+Delete an active user invitation sent to a new or existing user. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/user-invitations/{invitation_id} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -124,9 +124,9 @@ Name | Type | Description | Notes
# **getAllInvitations**
> UserInvitationRespList getAllInvitations(limit, after, order, loginProfilesEq)
-Get the details of all user invitations.
+Get user invitations.
-Retrieve details for all the active user invitations. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/user-invitations \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve an array of active user invitations sent by email. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/user-invitations \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -147,8 +147,8 @@ Bearer.setApiKey("YOUR API KEY");
AccountUserInvitationsApi apiInstance = new AccountUserInvitationsApi();
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String loginProfilesEq = "loginProfilesEq_example"; // String | Filter to retrieve user invitations by a specified login profile.
try {
UserInvitationRespList result = apiInstance.getAllInvitations(limit, after, order, loginProfilesEq);
@@ -164,8 +164,8 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**loginProfilesEq** | **String**| Filter to retrieve user invitations by a specified login profile. | [optional]
### Return type
@@ -187,7 +187,7 @@ Name | Type | Description | Notes
Details of a user invitation.
-Retrieve the details of an active user invitation. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/user-invitations/{invitation_id} \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve the details of an active user invitation. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/user-invitations/{invitation_id} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
diff --git a/backends/pelioncloud_devicemanagement/docs/AccountUsersApi.md b/backends/pelioncloud_devicemanagement/docs/AccountUsersApi.md
index 61fb080e2..13762ad4b 100644
--- a/backends/pelioncloud_devicemanagement/docs/AccountUsersApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/AccountUsersApi.md
@@ -8,13 +8,12 @@ Method | HTTP request | Description
[**addUserToListedGroups**](AccountUsersApi.md#addUserToListedGroups) | **POST** v3/users/{user_id}/groups/add | Add user to a list of groups.
[**createUser**](AccountUsersApi.md#createUser) | **POST** v3/users | Create a new user.
[**deleteUser**](AccountUsersApi.md#deleteUser) | **DELETE** v3/users/{user_id} | Delete a user.
-[**getAllUsers**](AccountUsersApi.md#getAllUsers) | **GET** v3/users | Get the details of all users.
-[**getGroupsOfUser**](AccountUsersApi.md#getGroupsOfUser) | **GET** v3/users/{user_id}/groups | Get groups of the user.
-[**getMyUser**](AccountUsersApi.md#getMyUser) | **GET** v3/users/me | Details of the current user.
+[**getAllUsers**](AccountUsersApi.md#getAllUsers) | **GET** v3/users | Get users.
+[**getGroupsOfUser**](AccountUsersApi.md#getGroupsOfUser) | **GET** v3/users/{user_id}/groups | Get policy groups for a user.
[**getUser**](AccountUsersApi.md#getUser) | **GET** v3/users/{user_id} | Details of a user.
+[**removeUserFromAccount**](AccountUsersApi.md#removeUserFromAccount) | **POST** v3/users/{user_id}/remove | Remove user from the account.
[**removeUserFromGroups**](AccountUsersApi.md#removeUserFromGroups) | **DELETE** v3/users/{user_id}/groups | Remove user from groups.
[**removeUserFromListedGroups**](AccountUsersApi.md#removeUserFromListedGroups) | **POST** v3/users/{user_id}/groups/remove | Remove user from groups.
-[**updateMyUser**](AccountUsersApi.md#updateMyUser) | **PUT** v3/users/me | Update user details.
[**updateUser**](AccountUsersApi.md#updateUser) | **PUT** v3/users/{user_id} | Update user details.
@@ -24,7 +23,7 @@ Method | HTTP request | Description
Add user to a list of groups.
-Add user to groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/users/{user_id}/groups \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Add user to groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/users/{user_id}/groups \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -81,7 +80,7 @@ Name | Type | Description | Notes
Add user to a list of groups.
-Add user to groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/users/{user_id}/groups/add \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Add user to groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/users/{user_id}/groups/add \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -138,7 +137,7 @@ Name | Type | Description | Notes
Create a new user.
-Create or invite a new user to the account. Only email address is used; other attributes are set in the second step. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/users?action=invite \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d {\"email\": \"myemail@company.com\"} ```
+Create or invite a new user to the account. The invited user has to accept the invitation by clicking the link in the invitation email. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/users?action=invite \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d {\"email\": \"myemail@company.com\"} ```
### Example
```java
@@ -195,7 +194,7 @@ Name | Type | Description | Notes
Delete a user.
-Delete a user. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/users/{user_id} \\ -H 'Authorization: Bearer <api_key>' ```
+Delete a user. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/users/{user_id} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -248,9 +247,9 @@ Name | Type | Description | Notes
# **getAllUsers**
> UserInfoRespList getAllUsers(limit, after, order, include, emailEq, statusEq, statusIn, statusNin, loginProfilesEq)
-Get the details of all users.
+Get users.
-Retrieve the details of all users. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/users \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve an array of users. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/users \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -271,8 +270,8 @@ Bearer.setApiKey("YOUR API KEY");
AccountUsersApi apiInstance = new AccountUsersApi();
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
String emailEq = "emailEq_example"; // String | Filter for email address
String statusEq = "statusEq_example"; // String | Filter for status, for example, active or reset.
@@ -293,8 +292,8 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
**emailEq** | **String**| Filter for email address | [optional]
**statusEq** | **String**| Filter for status, for example, active or reset. | [optional]
@@ -319,9 +318,9 @@ Name | Type | Description | Notes
# **getGroupsOfUser**
> GroupSummaryList getGroupsOfUser(userId, limit, after, order, include)
-Get groups of the user.
+Get policy groups for a user.
-Retrieve groups of the user. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/users/{user_id}/groups \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve an array of policy groups associated with a user. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/users/{user_id}/groups \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -343,8 +342,8 @@ Bearer.setApiKey("YOUR API KEY");
AccountUsersApi apiInstance = new AccountUsersApi();
String userId = "userId_example"; // String | The ID of the user.
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
try {
GroupSummaryList result = apiInstance.getGroupsOfUser(userId, limit, after, order, include);
@@ -361,8 +360,8 @@ Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**userId** | **String**| The ID of the user. |
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
### Return type
@@ -378,13 +377,13 @@ Name | Type | Description | Notes
- **Content-Type**: Not defined
- **Accept**: application/json
-
-# **getMyUser**
-> UserInfoResp getMyUser(scratchCodes, properties, include)
+
+# **getUser**
+> UserInfoResp getUser(userId)
-Details of the current user.
+Details of a user.
-Retrieve the details of the logged-in user.
+Retrieve the details of a user. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/users/{user_id} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -404,14 +403,12 @@ Bearer.setApiKey("YOUR API KEY");
//Bearer.setApiKeyPrefix("Token");
AccountUsersApi apiInstance = new AccountUsersApi();
-String scratchCodes = "scratchCodes_example"; // String | Request to regenerate new emergency scratch codes.
-String properties = "properties_example"; // String | Request to return account-specific user property values according to the given property name.
-String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: active_sessions.
+String userId = "userId_example"; // String | The ID of the user.
try {
- UserInfoResp result = apiInstance.getMyUser(scratchCodes, properties, include);
+ UserInfoResp result = apiInstance.getUser(userId);
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling AccountUsersApi#getMyUser");
+ System.err.println("Exception when calling AccountUsersApi#getUser");
e.printStackTrace();
}
```
@@ -420,9 +417,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **scratchCodes** | **String**| Request to regenerate new emergency scratch codes. | [optional]
- **properties** | **String**| Request to return account-specific user property values according to the given property name. | [optional]
- **include** | **String**| Comma-separated additional data to return. Currently supported: active_sessions. | [optional]
+ **userId** | **String**| The ID of the user. |
### Return type
@@ -437,13 +432,13 @@ Name | Type | Description | Notes
- **Content-Type**: Not defined
- **Accept**: application/json
-
-# **getUser**
-> UserInfoResp getUser(userId)
+
+# **removeUserFromAccount**
+> Void removeUserFromAccount(userId)
-Details of a user.
+Remove user from the account.
-Retrieve the details of a user. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/users/{user_id} \\ -H 'Authorization: Bearer <api_key>' ```
+Remove user from the account. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/users/{user_id}/remove \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -463,12 +458,12 @@ Bearer.setApiKey("YOUR API KEY");
//Bearer.setApiKeyPrefix("Token");
AccountUsersApi apiInstance = new AccountUsersApi();
-String userId = "userId_example"; // String | The ID of the user.
+String userId = "userId_example"; // String | The ID of the user to remove from the account.
try {
- UserInfoResp result = apiInstance.getUser(userId);
+ Void result = apiInstance.removeUserFromAccount(userId);
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling AccountUsersApi#getUser");
+ System.err.println("Exception when calling AccountUsersApi#removeUserFromAccount");
e.printStackTrace();
}
```
@@ -477,11 +472,11 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **userId** | **String**| The ID of the user. |
+ **userId** | **String**| The ID of the user to remove from the account. |
### Return type
-[**UserInfoResp**](UserInfoResp.md)
+[**Void**](.md)
### Authorization
@@ -498,7 +493,7 @@ Name | Type | Description | Notes
Remove user from groups.
-Remove user from groups. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/users/{user_id}/groups \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Remove user from groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/users/{user_id}/groups \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -555,7 +550,7 @@ Name | Type | Description | Notes
Remove user from groups.
-Remove user from groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/users/{user_id}/groups/remove \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Remove user from groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/users/{user_id}/groups/remove \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -601,61 +596,6 @@ Name | Type | Description | Notes
[Bearer](../README.md#Bearer)
-### HTTP request headers
-
- - **Content-Type**: application/json
- - **Accept**: application/json
-
-
-# **updateMyUser**
-> UserInfoResp updateMyUser(body)
-
-Update user details.
-
-Update user details. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/users/me \\ -H 'Authorization: Bearer <token>' \\ -H 'content-type: application/json' \\ -d '{\"full_name\": \"fullname\"}' ```
-
-### Example
-```java
-// Import classes:
-//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
-//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
-//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
-//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
-//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.AccountUsersApi;
-
-ApiClient defaultClient = Configuration.getDefaultApiClient();
-
-// Configure API key authorization: Bearer
-ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
-Bearer.setApiKey("YOUR API KEY");
-// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
-//Bearer.setApiKeyPrefix("Token");
-
-AccountUsersApi apiInstance = new AccountUsersApi();
-UserUpdateReq body = new UserUpdateReq(); // UserUpdateReq | A user object with attributes.
-try {
- UserInfoResp result = apiInstance.updateMyUser(body);
- System.out.println(result);
-} catch (ApiException e) {
- System.err.println("Exception when calling AccountUsersApi#updateMyUser");
- e.printStackTrace();
-}
-```
-
-### Parameters
-
-Name | Type | Description | Notes
-------------- | ------------- | ------------- | -------------
- **body** | [**UserUpdateReq**](UserUpdateReq.md)| A user object with attributes. |
-
-### Return type
-
-[**UserInfoResp**](UserInfoResp.md)
-
-### Authorization
-
-[Bearer](../README.md#Bearer)
-
### HTTP request headers
- **Content-Type**: application/json
@@ -667,7 +607,7 @@ Name | Type | Description | Notes
Update user details.
-Update user details **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/users/{user_id} \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"username\": \"myusername\"}' ```
+Update user details. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/users/{user_id} \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"username\": \"myusername\"}' ```
### Example
```java
diff --git a/backends/pelioncloud_devicemanagement/docs/AggregatedQuotaUsageReport.md b/backends/pelioncloud_devicemanagement/docs/AggregatedQuotaUsageReport.md
index 16c6898d8..9ffd9d418 100644
--- a/backends/pelioncloud_devicemanagement/docs/AggregatedQuotaUsageReport.md
+++ b/backends/pelioncloud_devicemanagement/docs/AggregatedQuotaUsageReport.md
@@ -21,6 +21,7 @@ RESERVATION_TERMINATION | "reservation_termination"
PACKAGE_RENEWAL | "package_renewal"
PACKAGE_CREATION | "package_creation"
PACKAGE_TERMINATION | "package_termination"
+PACKAGE_TOKENS_EDIT | "package_tokens_edit"
diff --git a/backends/pelioncloud_devicemanagement/docs/ApiKeyInfoReq.md b/backends/pelioncloud_devicemanagement/docs/ApiKeyInfoReq.md
index 91ac080db..41909bc58 100644
--- a/backends/pelioncloud_devicemanagement/docs/ApiKeyInfoReq.md
+++ b/backends/pelioncloud_devicemanagement/docs/ApiKeyInfoReq.md
@@ -4,10 +4,10 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**groups** | **List<String>** | A list of group IDs this API key belongs to. | [optional]
+**groups** | **List<String>** | A list of group IDs this API key belongs to. Adding an API key to the 'Administrators' group is restricted to administrators. | [optional]
**name** | **String** | The display name for the API key. |
-**owner** | **String** | The owner of this API key. | [optional]
-**status** | [**StatusEnum**](#StatusEnum) | The status of the API key. | [optional]
+**owner** | **String** | The owner of this API key. Only an administrator can set the owner of an API key. | [optional]
+**status** | [**StatusEnum**](#StatusEnum) | The status of the API key. Only an administrator can set the status of an API key. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/ApiKeyInfoRespList.md b/backends/pelioncloud_devicemanagement/docs/ApiKeyInfoRespList.md
index d6ccb726d..29ba143b2 100644
--- a/backends/pelioncloud_devicemanagement/docs/ApiKeyInfoRespList.md
+++ b/backends/pelioncloud_devicemanagement/docs/ApiKeyInfoRespList.md
@@ -4,7 +4,7 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**after** | **String** | The entity ID to fetch after the given one. | [optional]
+**after** | **String** | The entity ID to retrieve after the given one. | [optional]
**data** | [**List<ApiKeyInfoResp>**](ApiKeyInfoResp.md) | A list of entities. |
**hasMore** | **Boolean** | Flag indicating whether there are more results. |
**limit** | **Integer** | The number of results to return, or equal to `total_count`. |
diff --git a/backends/pelioncloud_devicemanagement/docs/ApiKeyUpdateReq.md b/backends/pelioncloud_devicemanagement/docs/ApiKeyUpdateReq.md
index 995a07f3f..e256a8d34 100644
--- a/backends/pelioncloud_devicemanagement/docs/ApiKeyUpdateReq.md
+++ b/backends/pelioncloud_devicemanagement/docs/ApiKeyUpdateReq.md
@@ -4,10 +4,10 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**groups** | **List<String>** | A list of group IDs this API key belongs to. | [optional]
-**name** | **String** | The display name for the API key. |
-**owner** | **String** | The owner of this API key. | [optional]
-**status** | [**StatusEnum**](#StatusEnum) | The status of the API key. | [optional]
+**groups** | **List<String>** | A list of group IDs this API key belongs to. Only an administrator can update the group membership of an API key. | [optional]
+**name** | **String** | The display name for the API key. | [optional]
+**owner** | **String** | The owner of this API key. Only an administrator can update the owner of an API key. | [optional]
+**status** | [**StatusEnum**](#StatusEnum) | The status of the API key. Only the owner of the API key or an administrator can update the status of an API key. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/Application.md b/backends/pelioncloud_devicemanagement/docs/Application.md
new file mode 100644
index 000000000..91c2a5a44
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/Application.md
@@ -0,0 +1,35 @@
+
+# Application
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**accountId** | **String** | The ID of the account. | [optional]
+**createdAt** | [**DateTime**](DateTime.md) | Creation UTC time RFC3339. | [optional]
+**description** | **String** | The description of the application. | [optional]
+**etag** | **String** | API resource entity version. | [optional]
+**groups** | **List<String>** | A list of group IDs this application belongs to. | [optional]
+**id** | **String** | The ID of the application. | [optional]
+**lastUsedAt** | [**DateTime**](DateTime.md) | The time of the latest application usage. | [optional]
+**name** | **String** | The display name for the application. |
+**object** | [**ObjectEnum**](#ObjectEnum) | Entity name: always 'application' | [optional]
+**status** | [**StatusEnum**](#StatusEnum) | The status of the application. When admin sets the application as inactive all related data and configurations are cleared from the system. If application is activated again, client must open new channels and set new subscriptions to start receiving events again. | [optional]
+**updatedAt** | [**DateTime**](DateTime.md) | Last update UTC time RFC3339. | [optional]
+
+
+
+## Enum: ObjectEnum
+Name | Value
+---- | -----
+APPLICATION | "application"
+
+
+
+## Enum: StatusEnum
+Name | Value
+---- | -----
+ACTIVE | "ACTIVE"
+INACTIVE | "INACTIVE"
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/ApplicationList.md b/backends/pelioncloud_devicemanagement/docs/ApplicationList.md
new file mode 100644
index 000000000..a721b35d0
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/ApplicationList.md
@@ -0,0 +1,31 @@
+
+# ApplicationList
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**after** | **String** | The entity ID to retrieve after the given one. | [optional]
+**data** | [**List<Application>**](Application.md) | A list of entities. |
+**hasMore** | **Boolean** | Flag indicating whether there are more results. |
+**limit** | **Integer** | The number of results to return, or equal to `total_count`. |
+**object** | [**ObjectEnum**](#ObjectEnum) | Entity name: always `list`. |
+**order** | [**OrderEnum**](#OrderEnum) | The order of the records to return based on creation time. Available values: ASC, DESC; by default ASC. | [optional]
+**totalCount** | **Integer** | The total number of records, if requested. |
+
+
+
+## Enum: ObjectEnum
+Name | Value
+---- | -----
+LIST | "list"
+
+
+
+## Enum: OrderEnum
+Name | Value
+---- | -----
+ASC | "ASC"
+DESC | "DESC"
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/ArchiveInfoResponse.md b/backends/pelioncloud_devicemanagement/docs/ArchiveInfoResponse.md
new file mode 100644
index 000000000..5f04a6dec
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/ArchiveInfoResponse.md
@@ -0,0 +1,15 @@
+
+# ArchiveInfoResponse
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**downloadSizeBytes** | **Integer** | The size of the archive file in bytes. |
+**downloadUrl** | **String** | URL to download the Factory Configurator Utility archive. |
+**licenseType** | **String** | The license agreement type required for downloading Factory Configurator Utility. | [optional]
+**licenseVersion** | **String** | The license agreement version required for downloading Factory Configurator Utility. | [optional]
+**releaseNotesUrl** | **String** | URL to the Factory Configurator Utility release notes. |
+**version** | **String** | The Factory Configurator Utility version. |
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/AsyncIDResponse.md b/backends/pelioncloud_devicemanagement/docs/AsyncIDResponse.md
index d531b6f72..a225e18a7 100644
--- a/backends/pelioncloud_devicemanagement/docs/AsyncIDResponse.md
+++ b/backends/pelioncloud_devicemanagement/docs/AsyncIDResponse.md
@@ -9,7 +9,7 @@ Name | Type | Description | Notes
**id** | **String** | The unique ID of the asynchronous response. | [optional]
**maxAge** | **String** | Determines how long this value stays valid in the cache, in seconds. 0 means that the value is not stored in the cache. | [optional]
**payload** | **String** | Requested data, base64 encoded. | [optional]
-**status** | **Integer** | States whether sending a command to the device succeeded or failed. <table> <thead> <tr> <th>Code</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><b>200</b></td> <td>Operation succeeded. The playload contains result of the operation from the device.</td> </tr> <tr> <td><b>404</b></td> <td>Endpoint does not have requested resource.</td> </tr> <tr> <td><b>412</b></td> <td>Precondition failed and operation was not executed. Device responded with 4.12 CoAP response code.</td> </tr> <tr> <td><b>413</b></td> <td>Request entity is too large and could not be delivered to the device.</td> </tr> <tr> <td><b>415</b></td> <td>Endpoint does not support media type.</td> </tr> <tr> <td><b>429</b></td> <td>Expired request was removed from queue (REQUEST_EXPIRED), device requested deregistration (DEVICE_REMOVED_REGISTRATION), or device was suspended (DEVICE_BLOCKED).</td> </tr> <tr> <td><b>502</b></td> <td>Request to the device failed and retry count exceeded. Last retry failed to establish TCP or TLS connection to endpoint.</td> </tr> <tr> <td><b>503</b></td> <td>Request to the device failed and retry count exceeded. Last retry failed because endpoint is currently unavailable (NOT_CONNECTED).</td> </tr> <tr> <td><b>504</b></td> <td>Request to the device failed and retry count exceeded. Last retry failed, as device did not respond in the time of protocol-specific retransmission logic (TIMEOUT).</td> </tr> </tbody> </table> | [optional]
+**status** | **Integer** | States whether sending a command to the device succeeded or failed. <table> <thead> <tr> <th>Code</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><b>200</b></td> <td>Operation succeeded. The payload contains result of the operation from the device.</td> </tr> <tr> <td><b>400</b></td> <td>The device rejected the request, possibly because it does not support the request method. See how the supported methods are [configured for the device resources](https://developer.pelion.com/docs/device-management/current/resources/index.html).</td> </tr> <tr> <td><b>404</b></td> <td>The device replied that it does not have the requested resource.</td> </tr> <tr> <td><b>412</b></td> <td>Precondition failed and the operation was not executed. The device responded with 4.12 CoAP response code. The device may reject a subscription request with this response code.</td> </tr> <tr> <td><b>413</b></td> <td>Request entity is too large and could not be delivered to the device.</td> </tr> <tr> <td><b>415</b></td> <td>The device does not support the media type in the request.</td> </tr> <tr> <td><b>429</b></td> <td>An expired request was removed from queue (REQUEST_EXPIRED), the device requested deregistration (DEVICE_REMOVED_REGISTRATION), or the device was suspended (DEVICE_BLOCKED). The request was never delivered to the device.</td> </tr> <tr> <td><b>502</b></td> <td>The request to the device failed and the retry count was exceeded. The last retry failed to establish TCP or TLS connection to the device.</td> </tr> <tr> <td><b>503</b></td> <td>The request to the device failed and the retry count was exceeded. The last retry failed because the device is currently unavailable (NOT_CONNECTED).</td> </tr> <tr> <td><b>504</b></td> <td>The request to the device failed and the retry count was exceeded. The last retry failed because the device did not respond in time according to the protocol-specific retransmission logic (TIMEOUT).</td> </tr> </tbody> </table> | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/BrandingColor.md b/backends/pelioncloud_devicemanagement/docs/BrandingColor.md
index ec4f1ccfa..b5aedcf92 100644
--- a/backends/pelioncloud_devicemanagement/docs/BrandingColor.md
+++ b/backends/pelioncloud_devicemanagement/docs/BrandingColor.md
@@ -37,6 +37,14 @@ SECONDARY_FONT_COLOR | "secondary_font_color"
ERROR_FONT_COLOR | "error_font_color"
SUCCESS_FONT_COLOR | "success_font_color"
WARNING_FONT_COLOR | "warning_font_color"
+MENU_BACKGROUND_COLOR | "menu_background_color"
+MENU_TEXT_COLOR | "menu_text_color"
+NAV_MENU_BACKGROUND | "nav_menu_background"
+NAV_MENU_BACKGROUND_FONT_COLOR | "nav_menu_background_font_color"
+NAV_MENU_ACTIVE_BACKGROUND | "nav_menu_active_background"
+NAV_MENU_ACTIVE_BACKGROUND_FONT_COLOR | "nav_menu_active_background_font_color"
+NAV_MENU_HIGHLIGHT | "nav_menu_highlight"
+NAV_MENU_HIGHLIGHT_FONT_COLOR | "nav_menu_highlight_font_color"
diff --git a/backends/pelioncloud_devicemanagement/docs/BrandingColorList.md b/backends/pelioncloud_devicemanagement/docs/BrandingColorList.md
index 69ccab012..cb61ae406 100644
--- a/backends/pelioncloud_devicemanagement/docs/BrandingColorList.md
+++ b/backends/pelioncloud_devicemanagement/docs/BrandingColorList.md
@@ -4,7 +4,7 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**after** | **String** | The entity ID to fetch after the given one. | [optional]
+**after** | **String** | The entity ID to retrieve after the given one. | [optional]
**data** | [**List<BrandingColor>**](BrandingColor.md) | A list of entities. |
**hasMore** | **Boolean** | Flag indicating whether there are more results. |
**limit** | **Integer** | The number of results to return, or equal to `total_count`. |
diff --git a/backends/pelioncloud_devicemanagement/docs/BrandingColorUpdate.md b/backends/pelioncloud_devicemanagement/docs/BrandingColorUpdate.md
new file mode 100644
index 000000000..ef8a3ccdb
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/BrandingColorUpdate.md
@@ -0,0 +1,41 @@
+
+# BrandingColorUpdate
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**color** | **String** | The color given as name (purple) or as a hex code. | [optional]
+**reference** | [**ReferenceEnum**](#ReferenceEnum) | Color name. |
+
+
+
+## Enum: ReferenceEnum
+Name | Value
+---- | -----
+ERROR_COLOR | "error_color"
+PRIMARY | "primary"
+SECONDARY | "secondary"
+SUCCESS_COLOR | "success_color"
+WARNING_COLOR | "warning_color"
+CANVAS_BACKGROUND | "canvas_background"
+CANVAS_BACKGROUND_FONT_COLOR | "canvas_background_font_color"
+WORKSPACE_BACKGROUND | "workspace_background"
+WORKSPACE_BACKGROUND_FONT_COLOR | "workspace_background_font_color"
+INFO_COLOR | "info_color"
+INFO_FONT_COLOR | "info_font_color"
+PRIMARY_FONT_COLOR | "primary_font_color"
+SECONDARY_FONT_COLOR | "secondary_font_color"
+ERROR_FONT_COLOR | "error_font_color"
+SUCCESS_FONT_COLOR | "success_font_color"
+WARNING_FONT_COLOR | "warning_font_color"
+MENU_BACKGROUND_COLOR | "menu_background_color"
+MENU_TEXT_COLOR | "menu_text_color"
+NAV_MENU_BACKGROUND | "nav_menu_background"
+NAV_MENU_BACKGROUND_FONT_COLOR | "nav_menu_background_font_color"
+NAV_MENU_ACTIVE_BACKGROUND | "nav_menu_active_background"
+NAV_MENU_ACTIVE_BACKGROUND_FONT_COLOR | "nav_menu_active_background_font_color"
+NAV_MENU_HIGHLIGHT | "nav_menu_highlight"
+NAV_MENU_HIGHLIGHT_FONT_COLOR | "nav_menu_highlight_font_color"
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/BrandingImage.md b/backends/pelioncloud_devicemanagement/docs/BrandingImage.md
index c67828069..943a41738 100644
--- a/backends/pelioncloud_devicemanagement/docs/BrandingImage.md
+++ b/backends/pelioncloud_devicemanagement/docs/BrandingImage.md
@@ -25,6 +25,9 @@ BRAND_LOGO_PORTRAIT | "brand_logo_portrait"
BRAND_LOGO_SQUARE | "brand_logo_square"
BRAND_LOGO_LANDSCAPE | "brand_logo_landscape"
BRAND_LOGO_EMAIL | "brand_logo_email"
+APP_LOGO_LANDSCAPE | "app_logo_landscape"
+APP_LOGO_PORTRAIT | "app_logo_portrait"
+APP_LOGO_SQUARE | "app_logo_square"
DESKTOP_BACKGROUND_LANDSCAPE | "desktop_background_landscape"
DESKTOP_BACKGROUND_SQUARE | "desktop_background_square"
DESKTOP_BACKGROUND_PORTRAIT | "desktop_background_portrait"
diff --git a/backends/pelioncloud_devicemanagement/docs/BrandingImageList.md b/backends/pelioncloud_devicemanagement/docs/BrandingImageList.md
index 7dca9022c..722311eb7 100644
--- a/backends/pelioncloud_devicemanagement/docs/BrandingImageList.md
+++ b/backends/pelioncloud_devicemanagement/docs/BrandingImageList.md
@@ -4,7 +4,7 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**after** | **String** | The entity ID to fetch after the given one. | [optional]
+**after** | **String** | The entity ID to retrieve after the given one. | [optional]
**data** | [**List<BrandingImage>**](BrandingImage.md) | A list of entities. |
**hasMore** | **Boolean** | Flag indicating whether there are more results. |
**limit** | **Integer** | The number of results to return, or equal to `total_count`. |
diff --git a/backends/pelioncloud_devicemanagement/docs/CertificateIssuerConfigListResponse.md b/backends/pelioncloud_devicemanagement/docs/CertificateIssuerConfigListResponse.md
index 8eff0aebc..1f3db5f91 100644
--- a/backends/pelioncloud_devicemanagement/docs/CertificateIssuerConfigListResponse.md
+++ b/backends/pelioncloud_devicemanagement/docs/CertificateIssuerConfigListResponse.md
@@ -6,10 +6,10 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**after** | **String** | An offset token for current page. | [optional]
**data** | [**List<CertificateIssuerConfigResponse>**](CertificateIssuerConfigResponse.md) | List of certificate issuers. | [optional]
-**hasMore** | **Boolean** | Are there more results available. | [optional]
-**limit** | **Integer** | How many objects to retrieve in the page. The minimum limit is 2 and the maximum is 1000. Limit values outside of this range are set to the closest limit. | [optional]
-**object** | **String** | The type of this API object is a `list`. | [optional]
-**order** | **String** | The creation time based order of the entries. | [optional]
+**hasMore** | **Boolean** | More results are available. | [optional]
+**limit** | **Integer** | The number of results to return (2-1000). Values outside of this range are set to the closest limit. | [optional]
+**object** | **String** | The type of this API object is `list`. | [optional]
+**order** | **String** | Record order based on creation time. | [optional]
**totalCount** | **Integer** | | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/CertificateIssuerConfigResponse.md b/backends/pelioncloud_devicemanagement/docs/CertificateIssuerConfigResponse.md
index 8416b9f01..f5ad1d16b 100644
--- a/backends/pelioncloud_devicemanagement/docs/CertificateIssuerConfigResponse.md
+++ b/backends/pelioncloud_devicemanagement/docs/CertificateIssuerConfigResponse.md
@@ -4,10 +4,10 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**certificateIssuerId** | **String** | The ID of the certificate issuer. Null if Device Management internal HSM is used. | [optional]
+**certificateIssuerId** | **String** | Certificate issuer ID. Null if Device Management internal HSM is used. | [optional]
**createdAt** | [**DateTime**](DateTime.md) | Created UTC time RFC3339. | [optional]
**etag** | **String** | Entity instance signature. | [optional]
-**id** | **String** | The ID of the certificate issuer configuration. | [optional]
+**id** | **String** | Certificate issuer ID. configuration. | [optional]
**isCustom** | **Boolean** | | [optional]
**object** | [**ObjectEnum**](#ObjectEnum) | | [optional]
**reference** | **String** | The certificate name to which the certificate issuer configuration applies. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/CertificateIssuerInfo.md b/backends/pelioncloud_devicemanagement/docs/CertificateIssuerInfo.md
index aa2dbd194..f90cc9a8a 100644
--- a/backends/pelioncloud_devicemanagement/docs/CertificateIssuerInfo.md
+++ b/backends/pelioncloud_devicemanagement/docs/CertificateIssuerInfo.md
@@ -7,9 +7,9 @@ Name | Type | Description | Notes
**createdAt** | [**DateTime**](DateTime.md) | Creation UTC time RFC3339. | [optional]
**description** | **String** | General description for the certificate issuer. | [optional]
**etag** | **String** | Entity instance signature. | [optional]
-**id** | **String** | The ID of the certificate issuer. | [optional]
-**issuerAttributes** | **Map<String, String>** | General attributes for connecting the certificate issuer. When the issuer_type is GLOBAL_SIGN, the value shall be empty. When the issuer_type is CFSSL_AUTH, see definition of CfsslAttributes. | [optional]
-**issuerType** | [**IssuerTypeEnum**](#IssuerTypeEnum) | The type of the certificate issuer. - GLOBAL_SIGN: Certificates are issued by GlobalSign service. The users must provide their own GlobalSign account credentials. - CFSSL_AUTH: Certificates are issued by CFSSL authenticated signing service. The users must provide their own CFSSL host_url and credentials. |
+**id** | **String** | Certificate issuer ID. | [optional]
+**issuerAttributes** | **Map<String, String>** | General attributes for connecting the certificate issuer. When the issuer_type is GLOBAL_SIGN, the value is empty. When the issuer_type is CFSSL_AUTH, see definition of CfsslAttributes. | [optional]
+**issuerType** | [**IssuerTypeEnum**](#IssuerTypeEnum) | Certificate issuer type. - GLOBAL_SIGN: Certificates are issued by GlobalSign service. You must provide your own GlobalSign account credentials. - CFSSL_AUTH: Certificates are issued by CFSSL authenticated signing service. You must provide your own CFSSL host_url and credentials. |
**name** | **String** | Certificate issuer name, unique per account. | [optional]
**object** | [**ObjectEnum**](#ObjectEnum) | | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/CertificateIssuerInfoListResponse.md b/backends/pelioncloud_devicemanagement/docs/CertificateIssuerInfoListResponse.md
index 382016606..03cc64230 100644
--- a/backends/pelioncloud_devicemanagement/docs/CertificateIssuerInfoListResponse.md
+++ b/backends/pelioncloud_devicemanagement/docs/CertificateIssuerInfoListResponse.md
@@ -6,10 +6,10 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**after** | **String** | An offset token for current page. | [optional]
**data** | [**List<CertificateIssuerInfo>**](CertificateIssuerInfo.md) | List of certificate issuers. | [optional]
-**hasMore** | **Boolean** | Are there more results available. | [optional]
-**limit** | **Integer** | How many objects to retrieve in the page. The minimum limit is 2 and the maximum is 1000. Limit values outside of this range are set to the closest limit. | [optional]
-**object** | **String** | The type of this API object is a `list`. | [optional]
-**order** | **String** | The creation time based order of the entries. | [optional]
+**hasMore** | **Boolean** | More results are available. | [optional]
+**limit** | **Integer** | The number of results to return (2-1000). Values outside of this range are set to the closest limit. | [optional]
+**object** | **String** | The type of this API object is `list`. | [optional]
+**order** | **String** | Record order based on creation time. | [optional]
**totalCount** | **Integer** | | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/CertificateIssuerRequest.md b/backends/pelioncloud_devicemanagement/docs/CertificateIssuerRequest.md
index c3fcec799..df2d6a9a8 100644
--- a/backends/pelioncloud_devicemanagement/docs/CertificateIssuerRequest.md
+++ b/backends/pelioncloud_devicemanagement/docs/CertificateIssuerRequest.md
@@ -5,9 +5,9 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**description** | **String** | General description of the certificate issuer. | [optional]
-**issuerAttributes** | **Map<String, String>** | General attributes for connecting the certificate issuer. When the issuer_type is GLOBAL_SIGN, the value shall be empty. When the issuer_type is CFSSL_AUTH, see definition of CfsslAttributes. | [optional]
-**issuerCredentials** | **Map<String, String>** | The credentials required for connecting to the certificate issuer. When the issuer_type is GLOBAL_SIGN, see definition of GlobalSignCredentials. When the issuer_type is CFSSL_AUTH, see definition of CfsslAuthCredentials. |
-**issuerType** | [**IssuerTypeEnum**](#IssuerTypeEnum) | The type of the certificate issuer. - GLOBAL_SIGN: Certificates are issued by GlobalSign service. The users must provide their own GlobalSign account credentials. - CFSSL_AUTH: Certificates are issued by CFSSL authenticated signing service. The users must provide their own CFSSL host_url and credentials. |
+**issuerAttributes** | **Map<String, String>** | General attributes for connecting the certificate issuer. When the issuer_type is GLOBAL_SIGN, the value is empty. When the issuer_type is CFSSL_AUTH, see definition of CfsslAttributes. | [optional]
+**issuerCredentials** | **Map<String, String>** | The credentials required to connect to the certificate issuer. When the issuer_type is GLOBAL_SIGN, see definition of GlobalSignCredentials. When the issuer_type is CFSSL_AUTH, see definition of CfsslAuthCredentials. |
+**issuerType** | [**IssuerTypeEnum**](#IssuerTypeEnum) | Certificate issuer type. - GLOBAL_SIGN: Certificates are issued by GlobalSign service. You must provide your own GlobalSign account credentials. - CFSSL_AUTH: Certificates are issued by CFSSL authenticated signing service. You must provide your own CFSSL host_url and credentials. |
**name** | **String** | Certificate issuer name, unique per account. |
diff --git a/backends/pelioncloud_devicemanagement/docs/CertificateIssuerUpdateRequest.md b/backends/pelioncloud_devicemanagement/docs/CertificateIssuerUpdateRequest.md
index c9869cee6..f17cce34a 100644
--- a/backends/pelioncloud_devicemanagement/docs/CertificateIssuerUpdateRequest.md
+++ b/backends/pelioncloud_devicemanagement/docs/CertificateIssuerUpdateRequest.md
@@ -5,8 +5,8 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**description** | **String** | General description of the certificate issuer. | [optional]
-**issuerAttributes** | **Map<String, String>** | General attributes for connecting the certificate issuer. When the issuer_type is GLOBAL_SIGN, the value shall be empty. When the issuer_type is CFSSL_AUTH, see definition of CfsslAttributes. | [optional]
-**issuerCredentials** | **Map<String, String>** | The credentials required for connecting to the certificate issuer. When the issuer_type is GLOBAL_SIGN, see definition of GlobalSignCredentials. When the issuer_type is CFSSL_AUTH, see definition of CfsslAuthCredentials. | [optional]
+**issuerAttributes** | **Map<String, String>** | General attributes for connecting the certificate issuer. When the issuer_type is GLOBAL_SIGN, the value is empty. When the issuer_type is CFSSL_AUTH, see definition of CfsslAttributes. | [optional]
+**issuerCredentials** | **Map<String, String>** | The credentials required to connect to the certificate issuer. When the issuer_type is GLOBAL_SIGN, see definition of GlobalSignCredentials. When the issuer_type is CFSSL_AUTH, see definition of CfsslAuthCredentials. | [optional]
**name** | **String** | Certificate issuer name. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/CertificateIssuerVerifyResponse.md b/backends/pelioncloud_devicemanagement/docs/CertificateIssuerVerifyResponse.md
index 1928bbe90..68429e475 100644
--- a/backends/pelioncloud_devicemanagement/docs/CertificateIssuerVerifyResponse.md
+++ b/backends/pelioncloud_devicemanagement/docs/CertificateIssuerVerifyResponse.md
@@ -4,8 +4,8 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**message** | **String** | Provides details in case of failure. | [optional]
-**successful** | **Boolean** | Indicates whether the certificate issuer was verified successfully. | [optional]
+**message** | **String** | Provides details in case of failure. | [optional]
+**successful** | **Boolean** | Indicates whether the certificate issuer was verified successfully. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/CfsslAttributes.md b/backends/pelioncloud_devicemanagement/docs/CfsslAttributes.md
index 60f1089aa..e3708d901 100644
--- a/backends/pelioncloud_devicemanagement/docs/CfsslAttributes.md
+++ b/backends/pelioncloud_devicemanagement/docs/CfsslAttributes.md
@@ -4,9 +4,9 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**cfsslLabel** | **String** | The label that is used by CFSSL when creating the certificate. | [optional]
-**cfsslProfile** | **String** | The profile that is configured on the CFSSL server and is used by CFSSL when creating the certificate. | [optional]
-**hostUrl** | **String** | The URL to connect to the CFSSL server. |
+**cfsslLabel** | **String** | The label that is used by CFSSL when creating the certificate. | [optional]
+**cfsslProfile** | **String** | The profile that is configured on the CFSSL server and used by CFSSL when creating the certificate. | [optional]
+**hostUrl** | **String** | The URL to connect to the CFSSL server. |
diff --git a/backends/pelioncloud_devicemanagement/docs/CfsslAuthCredentials.md b/backends/pelioncloud_devicemanagement/docs/CfsslAuthCredentials.md
index 1c0b0c94e..f30d5a823 100644
--- a/backends/pelioncloud_devicemanagement/docs/CfsslAuthCredentials.md
+++ b/backends/pelioncloud_devicemanagement/docs/CfsslAuthCredentials.md
@@ -4,7 +4,7 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**hmacHexKey** | **String** | The key that is used to compute the HMAC of the request using the HMAC-SHA-256 algorithm. Must contain an even number of hexadecimal characters. |
+**hmacHexKey** | **String** | The key that is used to compute the HMAC of the request using the HMAC-SHA-256 algorithm. Must contain an even number of hexadecimal characters. |
diff --git a/backends/pelioncloud_devicemanagement/docs/CreateCertificateIssuerConfig.md b/backends/pelioncloud_devicemanagement/docs/CreateCertificateIssuerConfig.md
index fb93a7ede..a8c1aa20e 100644
--- a/backends/pelioncloud_devicemanagement/docs/CreateCertificateIssuerConfig.md
+++ b/backends/pelioncloud_devicemanagement/docs/CreateCertificateIssuerConfig.md
@@ -4,8 +4,8 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**certificateIssuerId** | **String** | The ID of the certificate issuer. |
-**reference** | **String** | The certificate name, as created in the factory, to which the certificate issuer configuration applies. The following names are reserved and cannot be configured: LwM2M, BOOTSTRAP. |
+**certificateIssuerId** | **String** | Certificate issuer ID. |
+**reference** | **String** | The certificate name, as created in the factory, to which the certificate issuer configuration applies. The following names are reserved and cannot be configured: LwM2M, BOOTSTRAP. |
diff --git a/backends/pelioncloud_devicemanagement/docs/CreateTrustAnchorRequest.md b/backends/pelioncloud_devicemanagement/docs/CreateTrustAnchorRequest.md
new file mode 100644
index 000000000..2442e5e4a
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/CreateTrustAnchorRequest.md
@@ -0,0 +1,10 @@
+
+# CreateTrustAnchorRequest
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**description** | **String** | The description of the new trust anchor key pair. |
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/CreateTrustAnchorResponse.md b/backends/pelioncloud_devicemanagement/docs/CreateTrustAnchorResponse.md
new file mode 100644
index 000000000..d800d94fb
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/CreateTrustAnchorResponse.md
@@ -0,0 +1,18 @@
+
+# CreateTrustAnchorResponse
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**createdAt** | [**DateTime**](DateTime.md) | Creation UTC time. | [optional]
+**description** | **String** | Notes about the trust anchor. | [optional]
+**etag** | **String** | Entity instance signature, 1 or Unix timestamp of last customer update. | [optional]
+**fingerprint** | **byte[]** | The SHA256 of the trust anchor public key; the prefix 'mbed.ta.' followed by the trust anchor public key as a SHA256 hash in Base64-encoded DER format. | [optional]
+**id** | **String** | The ID of the entity. | [optional]
+**object** | **String** | The API resource entity | [optional]
+**publicKey** | **byte[]** | The generated trust anchor public key in PEM format. | [optional]
+**publicKeyDer** | **byte[]** | The generated trust anchor public key in Base64-encoded DER format. | [optional]
+**updatedAt** | [**DateTime**](DateTime.md) | Update UTC time. | [optional]
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/DeveloperCertificateRequestData.md b/backends/pelioncloud_devicemanagement/docs/DeveloperCertificateRequestData.md
index 2fa70d983..c89f0c7f6 100644
--- a/backends/pelioncloud_devicemanagement/docs/DeveloperCertificateRequestData.md
+++ b/backends/pelioncloud_devicemanagement/docs/DeveloperCertificateRequestData.md
@@ -4,8 +4,8 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**description** | **String** | Description for the developer certificate. Maximum 500 characters. Please see [TrustedCertificateReq](../current/api-references/account-management-api.html#trustedcertificatereq). | [optional]
-**name** | **String** | Name of the developer certificate. Must be unique. Maximum 100 characters. Please see [TrustedCertificateReq](../current/api-references/account-management-api.html#trustedcertificatereq). |
+**description** | **String** | Description for the developer certificate. Maximum 500 characters. Please see [TrustedCertificateReq](https://developer.pelion.com/docs/device-management-api/account-management/). | [optional]
+**name** | **String** | Name of the developer certificate. Must be unique. Maximum 100 characters. Please see [TrustedCertificateReq](https://developer.pelion.com/docs/device-management-api/account-management/). |
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceData.md b/backends/pelioncloud_devicemanagement/docs/DeviceData.md
index e909ef2ff..37275d705 100644
--- a/backends/pelioncloud_devicemanagement/docs/DeviceData.md
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceData.md
@@ -9,6 +9,7 @@ Name | Type | Description | Notes
**bootstrapExpirationDate** | [**LocalDate**](LocalDate.md) | The expiration date of the certificate used to connect to bootstrap server. | [optional]
**bootstrappedTimestamp** | [**DateTime**](DateTime.md) | The timestamp of the device's most recent bootstrap process. | [optional]
**caId** | **String** | The certificate issuer's ID. | [optional]
+**componentAttributes** | **Map<String, String>** | Up to ten custom key-value attributes. Note that keys cannot begin with a number. Both keys and values are limited to 128 characters. Updating this field replaces existing contents. | [optional]
**connectorExpirationDate** | [**LocalDate**](LocalDate.md) | The expiration date of the certificate used to connect to LwM2M server. | [optional]
**createdAt** | [**DateTime**](DateTime.md) | The timestamp of when the device was created in the device directory. | [optional]
**customAttributes** | **Map<String, String>** | Up to five custom key-value attributes. Note that keys cannot begin with a number. Both keys and values are limited to 128 characters. Updating this field replaces existing contents. | [optional]
@@ -18,13 +19,13 @@ Name | Type | Description | Notes
**deviceClass** | **String** | An ID representing the model and hardware revision of the device. | [optional]
**deviceExecutionMode** | **Integer** | The execution mode from the certificate of the device. Defaults to inheriting from host_gateway device. Permitted values: - 0 - Unspecified execution mode (default if host_gateway invalid or not set). The device firmware uses a certificate that is not identified as a developer or production certificate. - 1 - Development device. The device firmware uses a developer certificate to communicate with Device Management. - 5 - Production device. The device firmware uses a factory-generated certificate to communicate with Device Management. | [optional]
**deviceKey** | **String** | The fingerprint of the device certificate. | [optional]
-**endpointName** | **String** | The endpoint name given to the device. | [optional]
+**endpointName** | **String** | The endpoint name given to the device. The endpoint_name is from the device certificate and is set by factory tool. | [optional]
**endpointType** | **String** | The endpoint type of the device. For example, the device is a gateway. | [optional]
**enrolmentListTimestamp** | [**DateTime**](DateTime.md) | The claim date/time. | [optional]
**etag** | [**DateTime**](DateTime.md) | The entity instance signature. | [optional]
**firmwareChecksum** | **String** | The SHA256 checksum of the current firmware image. | [optional]
**groups** | **List<String>** | An array containing an ID of each group this device belongs to. | [optional]
-**hostGateway** | **String** | The ID of the host gateway, if appropriate. | [optional]
+**hostGateway** | **String** | The ID of the host gateway, if appropriate. A device behind Edge has this host_gateway set. | [optional]
**id** | **String** | The ID of the device. The device ID is used across all Device Management APIs. | [optional]
**issuerFingerprint** | **String** | SHA256 fingerprint of the certificate used to validate the signature of the device certificate. | [optional]
**lastOperatorSuspendedCategory** | **String** | The reference of the block category. | [optional]
@@ -33,18 +34,19 @@ Name | Type | Description | Notes
**lastSystemSuspendedCategory** | **String** | The reference of the block category. | [optional]
**lastSystemSuspendedDescription** | **String** | The most recent description of why the device was blocked or unblocked by the system. | [optional]
**lastSystemSuspendedUpdatedAt** | [**DateTime**](DateTime.md) | The timestamp of the most recent system block activity. | [optional]
-**lifecycleStatus** | [**LifecycleStatusEnum**](#LifecycleStatusEnum) | The lifecycle status of the device. | [optional]
+**lifecycleStatus** | [**LifecycleStatusEnum**](#LifecycleStatusEnum) | The lifecycle status of the device. * Enabled: The device is allowed to connect to Pelion Device Management. * Blocked: The device is prevented from connecting to Pelion Device Management. Device can be, for example, 'suspended'. | [optional]
**manifest** | **String** | DEPRECATED: The URL for the current device manifest. | [optional]
**manifestTimestamp** | [**DateTime**](DateTime.md) | The timestamp of the current manifest version. | [optional]
-**mechanism** | [**MechanismEnum**](#MechanismEnum) | The ID of the channel used to communicate with the device. | [optional]
-**mechanismUrl** | **String** | The address of the connector to use. | [optional]
-**name** | **String** | The name of the device. | [optional]
+**mechanism** | [**MechanismEnum**](#MechanismEnum) | NOT USED: The ID of the channel used to communicate with the device. | [optional]
+**mechanismUrl** | **String** | NOT USED: The address of the connector to use. | [optional]
+**name** | **String** | The name given by the web application for the device. Device itself provides only the endpoint_name. | [optional]
+**netId** | **String** | Private network identifier. Used to group nodes connected to a specific border router. | [optional]
**object** | **String** | The API resource entity. | [optional]
-**operatorSuspended** | **Boolean** | Is the device suspended by the operator? | [optional]
-**serialNumber** | **String** | The serial number of the device. | [optional]
-**state** | [**StateEnum**](#StateEnum) | The current state of the device. | [optional]
+**operatorSuspended** | **Boolean** | Device has been suspended by operator. | [optional]
+**serialNumber** | **String** | The [serial number](https://developer.pelion.com/docs/device-management-provision/latest/provisioning-info/lwm2m-device-object.html#serial-number) of the device. The serial number is injected by the factory tool during manufacturing. | [optional]
+**state** | [**StateEnum**](#StateEnum) | The current state of the device. * Unenrolled: The device has been created, but has not yet bootstrapped or connected to Device Management. * Cloud_enrolling: The device is bootstrapping for the first time. This state is set only while bootstrapping is in progress. For example, an external CA gives an error, and the device tries to bootstrap again after few seconds. * Bootstrapped: The device has bootstrapped, and has credentials to connect to Device Management. * Registered: The device has registered with Pelion Device Management. [Device commands](https://developer.pelion.com/docs/device-management-api/connect/) can be queued. The device sends events for [subscribed](https://developer.pelion.com/docs/device-management/current/resources/handle-resource-webapp.html) resources. * Deregistered: The device has requested deregistration, or its registration has expired. | [optional]
**systemSuspended** | **Boolean** | Is the device suspended by the system? | [optional]
-**updatedAt** | [**DateTime**](DateTime.md) | The time the object was updated. | [optional]
+**updatedAt** | [**DateTime**](DateTime.md) | The time this data object was updated. | [optional]
**vendorId** | **String** | The device vendor ID. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceDataNotificationsApi.md b/backends/pelioncloud_devicemanagement/docs/DeviceDataNotificationsApi.md
new file mode 100644
index 000000000..f3f5bbf99
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceDataNotificationsApi.md
@@ -0,0 +1,546 @@
+# DeviceDataNotificationsApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**connectWebsocket**](DeviceDataNotificationsApi.md#connectWebsocket) | **GET** v2/notification/websocket-connect | Open the websocket.
+[**deleteLongPollChannel**](DeviceDataNotificationsApi.md#deleteLongPollChannel) | **DELETE** v2/notification/pull | Delete notification Long Poll channel.
+[**deleteWebsocket**](DeviceDataNotificationsApi.md#deleteWebsocket) | **DELETE** v2/notification/websocket | Delete websocket channel.
+[**deregisterWebhook**](DeviceDataNotificationsApi.md#deregisterWebhook) | **DELETE** v2/notification/callback | Delete callback URL.
+[**getChannelMetadata**](DeviceDataNotificationsApi.md#getChannelMetadata) | **GET** v2/notification/channel | Get channel metadata.
+[**getWebhook**](DeviceDataNotificationsApi.md#getWebhook) | **GET** v2/notification/callback | Check callback URL.
+[**getWebsocket**](DeviceDataNotificationsApi.md#getWebsocket) | **GET** v2/notification/websocket | Get websocket channel information.
+[**longPollNotifications**](DeviceDataNotificationsApi.md#longPollNotifications) | **GET** v2/notification/pull | Get notifications using Long Poll
+[**registerWebhook**](DeviceDataNotificationsApi.md#registerWebhook) | **PUT** v2/notification/callback | Register a callback URL.
+[**registerWebsocket**](DeviceDataNotificationsApi.md#registerWebsocket) | **PUT** v2/notification/websocket | Register a websocket channel.
+
+
+
+# **connectWebsocket**
+> Void connectWebsocket(connection, upgrade, origin, secWebSocketVersion, secWebSocketKey, secWebSocketProtocol)
+
+Open the websocket.
+
+ A websocket channel can have only one active connection at a time. If a websocket connection for a channel exists and a new connection to the same channel is made, the connection is accepted and the older connection is closed. A websocket client library should be used when connecting to this endpoint. Once the socket has been opened, the server may close it with one of the following status codes. <table> <thead> <tr> <th>Code</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><b>1000</b></td> <td>Socket closed normally by the client, or by the server when the channel is deleted with a REST call.</td> </tr> <tr> <td><b>1001</b></td> <td>Going away. Set when another socket opens on the used channel.</td> </tr> <tr> <td><b>1006</b></td> <td>Abnormal closure. The client should reconnect after receiving this status code. A short reconnect delay is recommended.</td> </tr> <tr> <td><b>1008</b></td> <td>Policy violation. Set if the access key is lost or invalidated after a successful WebSocket handshake.</td> </tr> <tr> <td><b>1011</b></td> <td>Unexpected condition. The socket is closed with this status in an attempt to open a socket to a nonexistent channel (without a prior PUT request). This code is also used to indicate a closing socket for any other unexpected condition in the server.</td> </tr> <tr> <td><b>1012</b></td> <td>Service restart. Set when the server restarts for update, maintenance, and so on. The client should reconnect after receiving this status code. A short reconnect delay is recommended.</td> </tr> </tbody> </table> **Expected client behaviour:** If the connection is closed with code 1006 or 1012, the client should try to reconnect to maintain the notification flow. The client might disconnect several times in a relatively short period, for example, during service updates. This is normal. The desired client behavior is to reconnect after each disconnect. **Example:** The example is meant only for testing. For production devices, use a WebSocket client library. Websocat (https://github.com/vi/websocat) is a command-line client for WebSockets, like netcat or cURL. The example command opens a new WebSocket, waits for any data sent to the socket from the server, and prints it to `stdout`. ``` websocat wss://api.us-east-1.mbedcloud.com/v2/notification/websocket-connect \\ -H \"Sec-WebSocket-Protocol:wss,pelion_ak_<access_key>\" ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataNotificationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataNotificationsApi apiInstance = new DeviceDataNotificationsApi();
+String connection = "Upgrade"; // String |
+String upgrade = "websocket"; // String |
+String origin = "origin_example"; // String | Originating host of the request.
+Integer secWebSocketVersion = 13; // Integer | WebSocket version. Must be 13.
+String secWebSocketKey = "secWebSocketKey_example"; // String | The value of this header field must be a nonce consisting of a randomly selected 16-byte value that has been base64-encoded (see Section 4 of [RFC4648]). The nonce must be selected randomly for each connection.
+String secWebSocketProtocol = "secWebSocketProtocol_example"; // String | Access key or user token must be present in the `Sec-WebSocket-Protocol` header **if Authorization header cannot be provided**: `Sec-WebSocket-Protocol:\"wss,pelion_ak_{access_key}\"`. Refer to the notification service documentation for examples.
+try {
+ Void result = apiInstance.connectWebsocket(connection, upgrade, origin, secWebSocketVersion, secWebSocketKey, secWebSocketProtocol);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataNotificationsApi#connectWebsocket");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **connection** | **String**| | [default to Upgrade]
+ **upgrade** | **String**| | [default to websocket]
+ **origin** | **String**| Originating host of the request. |
+ **secWebSocketVersion** | **Integer**| WebSocket version. Must be 13. | [default to 13]
+ **secWebSocketKey** | **String**| The value of this header field must be a nonce consisting of a randomly selected 16-byte value that has been base64-encoded (see Section 4 of [RFC4648]). The nonce must be selected randomly for each connection. |
+ **secWebSocketProtocol** | **String**| Access key or user token must be present in the `Sec-WebSocket-Protocol` header **if Authorization header cannot be provided**: `Sec-WebSocket-Protocol:\"wss,pelion_ak_{access_key}\"`. Refer to the notification service documentation for examples. | [optional]
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **deleteLongPollChannel**
+> Void deleteLongPollChannel()
+
+Delete notification Long Poll channel.
+
+Delete a notification Long Poll channel. This is required to change the channel from Long Poll to another type. Do not make a GET `/v2/notification/pull` call for two minutes after deleting the channel, because it can implicitly recreate the pull channel. You can also have some random responses with payload or 410 GONE with \"CHANNEL_DELETED\" as a payload or 200/204 until the old channel is purged. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v2/notification/pull \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataNotificationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataNotificationsApi apiInstance = new DeviceDataNotificationsApi();
+try {
+ Void result = apiInstance.deleteLongPollChannel();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataNotificationsApi#deleteLongPollChannel");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **deleteWebsocket**
+> Void deleteWebsocket()
+
+Delete websocket channel.
+
+Delete a notification websocket channel bound to the application. This is required to change the channel from websocket to another type. Deleting the websocket channel also removes the channel's notification queue. Any unsent notifications are lost when the channel is deleted. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v2/notification/websocket \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataNotificationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataNotificationsApi apiInstance = new DeviceDataNotificationsApi();
+try {
+ Void result = apiInstance.deleteWebsocket();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataNotificationsApi#deleteWebsocket");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **deregisterWebhook**
+> Void deregisterWebhook()
+
+Delete callback URL.
+
+Deletes the callback URL. Deleting the callback URL also removes the channel's notification queue. Any unsent notifications are lost when the channel is deleted. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v2/notification/callback \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataNotificationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataNotificationsApi apiInstance = new DeviceDataNotificationsApi();
+try {
+ Void result = apiInstance.deregisterWebhook();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataNotificationsApi#deregisterWebhook");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getChannelMetadata**
+> ChannelMetadata getChannelMetadata()
+
+Get channel metadata.
+
+Get channel delivery mechanism. **Example:** curl -X GET https://api.us-east-1.mbedcloud.com/v2/notification/channel \\ -H 'Authorization: Bearer <access_key>'
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataNotificationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataNotificationsApi apiInstance = new DeviceDataNotificationsApi();
+try {
+ ChannelMetadata result = apiInstance.getChannelMetadata();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataNotificationsApi#getChannelMetadata");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**ChannelMetadata**](ChannelMetadata.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getWebhook**
+> Webhook getWebhook()
+
+Check callback URL.
+
+Shows the current callback URL if it exists. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v2/notification/callback \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataNotificationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataNotificationsApi apiInstance = new DeviceDataNotificationsApi();
+try {
+ Webhook result = apiInstance.getWebhook();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataNotificationsApi#getWebhook");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**Webhook**](Webhook.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getWebsocket**
+> WebsocketChannel getWebsocket()
+
+Get websocket channel information.
+
+Returns 200 with websocket connection status, if websocket channel exists. **Note**: The current version does not yet have the capability to determine the channel status and will always return status 'unknown' and queue size '-1'. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v2/notification/websocket \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataNotificationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataNotificationsApi apiInstance = new DeviceDataNotificationsApi();
+try {
+ WebsocketChannel result = apiInstance.getWebsocket();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataNotificationsApi#getWebsocket");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**WebsocketChannel**](WebsocketChannel.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **longPollNotifications**
+> NotificationMessage longPollNotifications()
+
+Get notifications using Long Poll
+
+In this case, notifications are delivered through HTTP long poll requests. The HTTP request is kept open until one or more event notifications are delivered to the client, or the request times out (response code 204). In both cases, the client should open a new polling connection after the previous one closes. Only a single long polling connection per application can be ongoing at any given time. We recommend using a persistent connection (Connection keep-alive header in the request) to avoid excess TLS handshakes. The pull channel is implicitly created by the first GET call to `/v2/notification/pull`. It refreshes on each GET call. If the channel is not polled for a long time (10 minutes), it expires and is deleted. This means that no notifications will stay in the queue between polls. A channel can be also be deleted explicitly with a DELETE call. **Note:** If you cannot have a public-facing callback URL, for example, when developing on your local machine, you can use long polling to check for new messages. However, **long polling is deprecated** and will likely be replaced in the future. It is meant only for experimentation, not commercial use. The proper method to receive notifications is a **notification callback**. There can only be one notification channel per application in Device Management Connect. If a notification channel of other type already exists for the application, delete it before creating a long poll notification channel. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v2/notification/pull \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataNotificationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataNotificationsApi apiInstance = new DeviceDataNotificationsApi();
+try {
+ NotificationMessage result = apiInstance.longPollNotifications();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataNotificationsApi#longPollNotifications");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**NotificationMessage**](NotificationMessage.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **registerWebhook**
+> Void registerWebhook(webhook)
+
+Register a callback URL.
+
+Register a URL to which the server delivers notifications of changes to the subscribed resource. To push notifications, you must first place subscriptions. The maximum length of the URL, header keys, and values, all combined, is 400 characters. Notifications are delivered as PUT requests to the HTTP server, which the client defines with a subscription server message. The given URL must be accessible, and respond to the PUT request with a response code of 200 or 204. Device Management Connect tests the callback URL with an empty JSON payload `{}` when the URL is registered. Callback implementation does not support URL redirection. For more information on notification messages, see [NotificationMessage](#NotificationMessage). **Optional headers in a callback message:** You can set optional headers to a callback in a **Webhook** object. Device Management Connect includes the header and key pairs in the notification messages send them to callback URL. The callback URLs and headers are application-specific. One possible use for additional headers is checking the origin of a PUT request, as well as distinguishing the application to which the notification belongs. **Note**: Only one callback URL for each application can be active. If you register a new URL while another one is active, it replaces the active one. There can be only one notification channel at a time for each application. If another type of channel is already present, you need to delete it before setting the callback URL. **Expiration of a callback URL:** A callback can expire when Device Management cannot deliver a notification due to a connection timeout or error response (4xx or 5xx). After each delivery failure, Device Management sets an exponential back-off time and makes a retry attempt after that. The first retry delay is 1 second, then 2s, 4s, 8s, up to a maximum delay of two minutes. The retry delay is applied when the response is received, or in case of timeout, after the timeout expires. The request timeout is 20 seconds; in the case of timeout, the first retry happens 20 + 1 seconds after the first delivery attempt, then 20 + 2 seconds, and so on. The callback URL is removed if all retries fail within 24 hours. More about [notification sending logic](https://developer.pelion.com/docs/device-management/current/integrate-web-app/event-notification.html#notification-sending-logic) in the Device Management documentation. **Supported callback URL protocols:** Currently, only HTTP and HTTPS protocols are supported. **HTTPS callback URLs:** When delivering a notification to an HTTPS-based callback URL, Device Management Connect identifies itself with a valid client certificate. The certificate is signed by a trusted certificate authority (GlobalSign), with a Common Name (CN) set to `notifications.mbedcloud.com`. **Configuration options:** The event notification channel provides configurations options defined in [Serialization config](#SerializationConfigObjectV2). **Example:** This example command shows how to set your callback URL. It also sets an optional header authorization. When Device Management Connect calls your callback URL, the call contains the authorization header with the defined value. ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v2/notification/callback \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"url\": \"{callback-url}\", \"headers\": {\"authorization\": \"f4b93d6e-4652-4874-82e4-41a3ced0cd56\"}, \"serialization\": {\"type\": \"v2\", \"max_chunk_size\": \"100\", \"cfg\": {\"deregistrations_as_object\": \"true\", \"include_uid\": \"true\", \"include_timestamp\": \"true\", \"include_original_ep\": \"true\" } } }' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataNotificationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataNotificationsApi apiInstance = new DeviceDataNotificationsApi();
+Webhook webhook = new Webhook(); // Webhook | A JSON object that contains the optional headers and URL where notifications are sent.
+try {
+ Void result = apiInstance.registerWebhook(webhook);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataNotificationsApi#registerWebhook");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **webhook** | [**Webhook**](Webhook.md)| A JSON object that contains the optional headers and URL where notifications are sent. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+
+# **registerWebsocket**
+> RegisterWebsocketChannel registerWebsocket()
+
+Register a websocket channel.
+
+Register (or update) a channel using websocket connection to deliver notifications. The websocket channel should be opened by client using `/v2/notification/websocket-connect` endpoint. To get notifications pushed, you must place subscriptions. For more information on notification messages, see [NotificationMessage](#NotificationMessage). A websocket channel can have only one active websocket connection at a time. If a websocket connection for a channel exists and a new connection to the same channel is made, the connection is accepted and the older connection is closed. **Note**: Only one websocket channel for each application can be active at a time. If you register a new websocket channel while another one is active, it replaces the previously active one. If another type of channel is already present, you need to delete it before registering a websocket channel. **Note**: The current version does not yet have the capability to determine the channel status and will always return status 'unknown' and queue size '-1'. **Expiration of a websocket:** A websocket channel is expired if the channel does not have an opened websocket connection for a 24-hour period. Channel expiration means the channel is deleted and any undelivered notifications stored in its internal queue is removed. As long as the channel has an opened websocket connection or time between successive websocket connections is less than 24 hours, the channel is considered active, notifications are stored in its internal queue and delivered when a websocket connection is active. A channel can be also deleted explicitly with a DELETE call. More about [notification sending logic](https://developer.pelion.com/docs/device-management/current/integrate-web-app/event-notification.html#notification-sending-logic). **Configuration options:** The event notification channel provides configurations options defined in [Serialization config](#SerializationConfigObjectV2) **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v2/notification/websocket \\ -H 'Authorization: Bearer <access_key>' \\ -d '{ \"serialization\": {\"type\": \"v2\", \"max_chunk_size\": \"100\", \"cfg\": {\"deregistrations_as_object\": \"true\", \"include_uid\": \"true\", \"include_timestamp\": \"true\", \"include_original_ep\": \"true\" } } } ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataNotificationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataNotificationsApi apiInstance = new DeviceDataNotificationsApi();
+try {
+ RegisterWebsocketChannel result = apiInstance.registerWebsocket();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataNotificationsApi#registerWebsocket");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**RegisterWebsocketChannel**](RegisterWebsocketChannel.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceDataPutRequest.md b/backends/pelioncloud_devicemanagement/docs/DeviceDataPutRequest.md
index 7b1796213..c56bbd6b8 100644
--- a/backends/pelioncloud_devicemanagement/docs/DeviceDataPutRequest.md
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceDataPutRequest.md
@@ -5,11 +5,11 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**autoUpdate** | **Boolean** | DEPRECATED: Mark this device for automatic firmware update. | [optional]
-**caId** | **String** | The certificate issuer's ID. | [optional]
+**caId** | **String** | The certificate issuer's ID. WARNING: This value comes from the device, and should not be changed via the API. | [optional]
**customAttributes** | **Map<String, String>** | Up to five custom key-value attributes. Note that keys cannot begin with a number. Both keys and values are limited to 128 characters. Updating this field replaces existing contents. | [optional]
**description** | **String** | The description of the device. | [optional]
-**deviceKey** | **String** | The fingerprint of the device certificate. | [optional]
-**endpointName** | **String** | The endpoint name given to the device. | [optional]
+**deviceKey** | **String** | The fingerprint of the device certificate. WARNING: This value comes from the device, and should not be changed via the API. | [optional]
+**endpointName** | **String** | The endpoint name given to the device. WARNING: This value comes from the device, and should not be changed via the API. | [optional]
**endpointType** | **String** | The endpoint type of the device. For example, the device is a gateway. | [optional]
**hostGateway** | **String** | The ID of the host gateway, if appropriate. | [optional]
**name** | **String** | The name of the device. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceDataRequestsApi.md b/backends/pelioncloud_devicemanagement/docs/DeviceDataRequestsApi.md
new file mode 100644
index 000000000..cd6f32683
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceDataRequestsApi.md
@@ -0,0 +1,72 @@
+# DeviceDataRequestsApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**createAsyncRequest**](DeviceDataRequestsApi.md#createAsyncRequest) | **POST** v2/device-requests/{device-id} | Send an asynchronous request to read, write or post to a device resource.
+
+
+
+# **createAsyncRequest**
+> Void createAsyncRequest(deviceId, asyncId, body, retry, expirySeconds)
+
+Send an asynchronous request to read, write or post to a device resource.
+
+This API provides an interface to call CoAP (Constrained Application Protocol) methods on a device and send commands to device resources. As part of the request body, you must specify the CoAP method you want to call on the device: - Use the GET method to read resource values. For example, to read the value of resource `/3200/0/5501`, use: ``` curl -X POST https://api.us-east-1.mbedcloud.com/v2/device-requests/{device_id}?async-id={async-response-id} \\ -H 'Authorization: Bearer {access_key}' \\ -H 'content-type: application/json' \\ -d '{\"method\": \"GET\", \"uri\": \"/3200/0/5501\"}' ``` > For `GET` methods, the API may fetch values from an internal cache, instead of contacting the device. > If the value is not in the cache, the read command goes all the way to the device. - Use the PUT method to write [notification rules](https://developer.pelion.com/docs/device-management/current/resources/resource-change-webapp.html) or resource values for a resource. Example payload to write a notification rule: ``` { \"method\": \"PUT\", \"uri\": \"/5/0/1?lt=10>=60&pmax=120\" } ``` - Example payload to write a value to resource `/5/0/1`: ``` { \"method\": \"PUT\", \"uri\": \"/5/0/1?k1=v1&k2=v2\", \"accept\": \"text/plain\", \"content-type\": \"text/plain\", \"payload-b64\": \"dmFsdWUxCg==\" } ``` - Use the POST method to execute or create a resource on a LWM2M supporting device. When you create a resource, `uri` must refer to an object, and `payload-b64` must be in LWM2M TLV format for example: ``` { \"method\": \"POST\", \"uri\": \"/123\", \"content-type\": \"application/vnd.oma.lwm2m+tlv\", \"payload-b64\": \"BwHFAnZhbHVl\" } ``` - Use the POST method to execute resource on a LWM2M supporting device. Example payload to execute LWM2M resource `/123/1/1`: ``` { \"method\": \"POST\", \"uri\": \"/123/1/1\" } ``` - Device Management sends responses through the currently configured notification channel as `AsyncIDResponse`. Example `AsyncIDResponse` delivered through the notification channel: ``` { \"async-responses\": [ { \"id\": \"123e4567-e89b-12d3-a456-426655440000\", \"status\": 200, \"payload\": \"dmFsdWUxCg==\", \"ct\": \"text/plain\", \"max-age\": 600 } ] } ``` ``` { \"async-responses\": [ { \"id\": \"123e4567-e89b-12d3-a456-426655440000\", \"status\": 504, \"error\": \"TIMEOUT\" } ] } ``` > If it cannot reach the device at the time of the request, Device Management puts the requests in a queue. **Queueing behavior** If Device Management does not reach the device, or the device fails to respond, the server queues the request and retries the delivery, for the period of time defined by `expiry-seconds`, the next time the device contacts the server. The queue is limited to 20 requests per device. If the queue is full, subsequent messages will be rejected until some of the existing messages are delivered or expired. Device Management delivers requests from the queue in the order of insertion, one at a time, and not concurrently. Delivery attempts follow protocol-specific retransmission logic. There can be multiple transmissions, depending on the protocol. For CoAP, the retransmissions have an exponential backoff of 2, 4, 8, 16, and up to 64 seconds, taking in total over two minutes. If the device does not respond within this two-minute period, the delivery fails, Device Management performs one retry and then puts the request back into the queue until the retry count reaches its limit. Device Management attempts to redeliver the request when the device next contacts the server. When Device Management reaches the `retry` or `expiry-seconds` limit, the server discards the request and sends an error in `AsyncIDResponse`. For example: - Retries could be exhausted if the device periodically contacts the server and receives the request from the queue, but then fails to respond to the server. - The device may lose its network connectivity, and the requests in the queue may expire and get discarded before the device regains connectivity. When Device Management delivers the request to the device, the status code in `AsyncIDResponse` is *2xx* or *4xx*, based on the device's response. If Device Management could not deliver the request, the server generates a status code of *429* or *5xx*.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataRequestsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataRequestsApi apiInstance = new DeviceDataRequestsApi();
+String deviceId = "deviceId_example"; // String | The device ID generated by Device Management.
+String asyncId = "asyncId_example"; // String | A client-generated ID that lets the REST client track the end-to-end flow and prevents race conditions with the notification channel. The `async-id` can be, for example, a UUID or the web application session ID along with the device ID and the resource.
+DeviceRequest body = new DeviceRequest(); // DeviceRequest | Device request to send. The body element has `method`, `uri`, `accept`, `content-type` and `payload-b64` fields. - The `method` is one of `GET`, `PUT`, `POST`, `DELETE`. - The `uri` field is the path to the LwM2M object and can include query parameters. This can include key-value pairs, for example, `/5/0/1?key1=value1;key2=value2`. - The `accept` field defines the content type that the requesting client will accept. - The `content-type` describes the content type of the base-64 encoded `payload-b64` field. - The `payload-b64` is the payload to send to the device in base-64 encoded form.
+Integer retry = 56; // Integer | The number of attempts to deliver the request to the device after the first delivery attempt. For example, two retries sums up to the total of three delivery attempts. When retries are exhausted, Device Management discards the request and delivers an error in the AsyncIDResponse. The default number of retries for a non-queue mode device is `0`. The default number of retries for a queue-mode device is `2`.
+Integer expirySeconds = 56; // Integer | The time period during which the delivery is attempted, in seconds. If the device is not reachable within this period, Device Management discards the request and delivers an error in the AsyncIDResponse. The default time period during which the delivery is attempted is two hours for a non-queue mode device and three days for a queue-mode device.
+try {
+ Void result = apiInstance.createAsyncRequest(deviceId, asyncId, body, retry, expirySeconds);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataRequestsApi#createAsyncRequest");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **deviceId** | **String**| The device ID generated by Device Management. |
+ **asyncId** | **String**| A client-generated ID that lets the REST client track the end-to-end flow and prevents race conditions with the notification channel. The `async-id` can be, for example, a UUID or the web application session ID along with the device ID and the resource. |
+ **body** | [**DeviceRequest**](DeviceRequest.md)| Device request to send. The body element has `method`, `uri`, `accept`, `content-type` and `payload-b64` fields. - The `method` is one of `GET`, `PUT`, `POST`, `DELETE`. - The `uri` field is the path to the LwM2M object and can include query parameters. This can include key-value pairs, for example, `/5/0/1?key1=value1;key2=value2`. - The `accept` field defines the content type that the requesting client will accept. - The `content-type` describes the content type of the base-64 encoded `payload-b64` field. - The `payload-b64` is the payload to send to the device in base-64 encoded form. |
+ **retry** | **Integer**| The number of attempts to deliver the request to the device after the first delivery attempt. For example, two retries sums up to the total of three delivery attempts. When retries are exhausted, Device Management discards the request and delivers an error in the AsyncIDResponse. The default number of retries for a non-queue mode device is `0`. The default number of retries for a queue-mode device is `2`. | [optional]
+ **expirySeconds** | **Integer**| The time period during which the delivery is attempted, in seconds. If the device is not reachable within this period, Device Management discards the request and delivers an error in the AsyncIDResponse. The default time period during which the delivery is attempted is two hours for a non-queue mode device and three days for a queue-mode device. | [optional]
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceDataResourcesApi.md b/backends/pelioncloud_devicemanagement/docs/DeviceDataResourcesApi.md
new file mode 100644
index 000000000..5e018a6a2
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceDataResourcesApi.md
@@ -0,0 +1,310 @@
+# DeviceDataResourcesApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**deleteResourcePath**](DeviceDataResourcesApi.md#deleteResourcePath) | **DELETE** v2/endpoints/{device-id}/{resourcePath} | (DEPRECATED) Delete a resource path.
+[**executeOrCreateResource**](DeviceDataResourcesApi.md#executeOrCreateResource) | **POST** v2/endpoints/{device-id}/{resourcePath} | (DEPRECATED) Execute a function on a Resource or create new Object instance.
+[**getEndpointResources**](DeviceDataResourcesApi.md#getEndpointResources) | **GET** v2/endpoints/{device-id} | List the resources on a device.
+[**getResourceValue**](DeviceDataResourcesApi.md#getResourceValue) | **GET** v2/endpoints/{device-id}/{resourcePath} | (DEPRECATED) Read from a resource.
+[**updateResourceValue**](DeviceDataResourcesApi.md#updateResourceValue) | **PUT** v2/endpoints/{device-id}/{resourcePath} | (DEPRECATED) Write to a Resource or use write-attributes (notification rules) for a Resource.
+
+
+
+# **deleteResourcePath**
+> AsyncID deleteResourcePath(deviceId, resourcePath, noResp)
+
+(DEPRECATED) Delete a resource path.
+
+(DEPRECATED) A request to delete a resource path must be handled by both Device Management Client and Device Management Connect. All resource APIs are asynchronous. These APIs respond only if the device is on and connected to Device Management Connect, and there is an active notification channel. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v2/endpoints/{device-id}/{resourcePath} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataResourcesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataResourcesApi apiInstance = new DeviceDataResourcesApi();
+String deviceId = "deviceId_example"; // String | The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards.
+String resourcePath = "resourcePath_example"; // String | The resource URL.
+Boolean noResp = true; // Boolean | If you make a request with `noResp=true`, Device Management Connect makes a CoAP non-confirmable request to the device. Such requests are not guaranteed to arrive at the device, and do not return an async-response-id. When calls with this parameter enabled succeed, they return with the status code `204 No Content`. If the underlying protocol does not support non-confirmable requests, or if the endpoint is registered in queue mode, the response is status code `409 Conflict`.
+try {
+ AsyncID result = apiInstance.deleteResourcePath(deviceId, resourcePath, noResp);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataResourcesApi#deleteResourcePath");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **deviceId** | **String**| The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards. |
+ **resourcePath** | **String**| The resource URL. |
+ **noResp** | **Boolean**| If you make a request with `noResp=true`, Device Management Connect makes a CoAP non-confirmable request to the device. Such requests are not guaranteed to arrive at the device, and do not return an async-response-id. When calls with this parameter enabled succeed, they return with the status code `204 No Content`. If the underlying protocol does not support non-confirmable requests, or if the endpoint is registered in queue mode, the response is status code `409 Conflict`. | [optional]
+
+### Return type
+
+[**AsyncID**](AsyncID.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **executeOrCreateResource**
+> AsyncID executeOrCreateResource(deviceId, resourcePath, resourceFunction, noResp)
+
+(DEPRECATED) Execute a function on a Resource or create new Object instance.
+
+(DEPRECATED) [Execute a function](https://developer.pelion.com/docs/device-management/current/resources/handle-resource-webapp.html#the-execute-operation) on an existing resource and create a new Object instance on the device. The resource path does not have to exist; you can set it with the call. The maximum length of the resource path is 255 characters. All resource APIs are asynchronous. These APIs respond only if the device is on and connected to Device Management Connect, and there is an active notification channel. Supported content types depend on the device and its resource. Device Management translates HTTP to the equivalent CoAP content type. **Example:** This example resets the min and max values of the [temperature sensor](http://www.openmobilealliance.org/tech/profiles/lwm2m/3303.xml) instance 0 by executing Resource 5605 'Reset Min and Max Measured Values'. ``` curl -X POST https://api.us-east-1.mbedcloud.com/v2/endpoints/{device-id}/3303/0/5605 \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataResourcesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataResourcesApi apiInstance = new DeviceDataResourcesApi();
+String deviceId = "deviceId_example"; // String | The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards.
+String resourcePath = "resourcePath_example"; // String | The resource URL.
+String resourceFunction = "resourceFunction_example"; // String | This value is not needed. Most of the time, resources do not accept a function; they have their own functions predefined. You can use this to trigger them. If a function is included, the body of this request is passed as a char* to the function in Device Management Client.
+Boolean noResp = true; // Boolean | If you make a request with `noResp=true`, Device Management Connect makes a CoAP non-confirmable request to the device. Such requests are not guaranteed to arrive in the device, and you do not get back an async-response-id. When calls with this parameter enabled succeed, they return with the status code `204 No Content`. If the underlying protocol does not support non-confirmable requests, or if the endpoint is registered in queue mode, the response is status code `409 Conflict`.
+try {
+ AsyncID result = apiInstance.executeOrCreateResource(deviceId, resourcePath, resourceFunction, noResp);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataResourcesApi#executeOrCreateResource");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **deviceId** | **String**| The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards. |
+ **resourcePath** | **String**| The resource URL. |
+ **resourceFunction** | **String**| This value is not needed. Most of the time, resources do not accept a function; they have their own functions predefined. You can use this to trigger them. If a function is included, the body of this request is passed as a char* to the function in Device Management Client. | [optional]
+ **noResp** | **Boolean**| If you make a request with `noResp=true`, Device Management Connect makes a CoAP non-confirmable request to the device. Such requests are not guaranteed to arrive in the device, and you do not get back an async-response-id. When calls with this parameter enabled succeed, they return with the status code `204 No Content`. If the underlying protocol does not support non-confirmable requests, or if the endpoint is registered in queue mode, the response is status code `409 Conflict`. | [optional]
+
+### Return type
+
+[**AsyncID**](AsyncID.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: text/plain, application/xml, application/octet-stream, application/exi, application/json, application/link-format, application/senml+json, application/nanoservice-tlv, application/vnd.oma.lwm2m+text, application/vnd.oma.lwm2m+opaq, application/vnd.oma.lwm2m+tlvapplication/vnd.oma.lwm2m+json,
+ - **Accept**: application/json
+
+
+# **getEndpointResources**
+> ResourceArray getEndpointResources(deviceId)
+
+List the resources on a device.
+
+Retrieves information about the resource structure for a device from Device Management. This call does not reach the device. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v2/endpoints/{device-id} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataResourcesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataResourcesApi apiInstance = new DeviceDataResourcesApi();
+String deviceId = "deviceId_example"; // String | The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards.
+try {
+ ResourceArray result = apiInstance.getEndpointResources(deviceId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataResourcesApi#getEndpointResources");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **deviceId** | **String**| The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards. |
+
+### Return type
+
+[**ResourceArray**](ResourceArray.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getResourceValue**
+> Void getResourceValue(deviceId, resourcePath, cacheOnly, noResp)
+
+(DEPRECATED) Read from a resource.
+
+(DEPRECATED) Requests the resource value either from the device or cache. If the value is not in the cache, the request goes all the way to the device. When the response is available, an `AsyncIDResponse` JSON object is received in the notification channel. The resource values can also be in cache based on `max_age` defined by the device. The value found from the cache is returned immediately in the response. The preferred way to get resource values is to use the **subscribe** and **callback** methods. All resource APIs are asynchronous. These APIs only respond if the device is on and connected to Device Management. See also how [resource caching](https://developer.pelion.com/docs/device-management/current/connecting/device-guidelines.html#resource-cache) works. Please see the [Lightweight Machine to Machine Technical specification](http://www.openmobilealliance.org/release/LightweightM2M/V1_0-20170208-A/OMA-TS-LightweightM2M-V1_0-20170208-A.pdf) for more information. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v2/endpoints/{device-id}/{resourcePath} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataResourcesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataResourcesApi apiInstance = new DeviceDataResourcesApi();
+String deviceId = "deviceId_example"; // String | Unique Device Management device ID for the endpoint. The ID must be an exact match. Do not use wildcards.
+String resourcePath = "resourcePath_example"; // String | The resource URL.
+Boolean cacheOnly = true; // Boolean | If true, the response comes only from the cache. Default: false. Device Management Connect caches the received resource values for the time of [max_age](https://developer.pelion.com/docs/device-management/current/resources/working-with-the-resources.html) defined in the client.
+Boolean noResp = true; // Boolean | If a request is made with `noResp=true`, Device Management Connect makes a CoAP non-confirmable request to the device. Such requests are not guaranteed to arrive on the device, and no `async-response-id` returns. Successful calls return with the status code `204 No Content`. If the underlying protocol does not support non-confirmable requests, or if the endpoint is registered in queue mode, the response is status code `409 Conflict`.
+try {
+ Void result = apiInstance.getResourceValue(deviceId, resourcePath, cacheOnly, noResp);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataResourcesApi#getResourceValue");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **deviceId** | **String**| Unique Device Management device ID for the endpoint. The ID must be an exact match. Do not use wildcards. |
+ **resourcePath** | **String**| The resource URL. |
+ **cacheOnly** | **Boolean**| If true, the response comes only from the cache. Default: false. Device Management Connect caches the received resource values for the time of [max_age](https://developer.pelion.com/docs/device-management/current/resources/working-with-the-resources.html) defined in the client. | [optional]
+ **noResp** | **Boolean**| If a request is made with `noResp=true`, Device Management Connect makes a CoAP non-confirmable request to the device. Such requests are not guaranteed to arrive on the device, and no `async-response-id` returns. Successful calls return with the status code `204 No Content`. If the underlying protocol does not support non-confirmable requests, or if the endpoint is registered in queue mode, the response is status code `409 Conflict`. | [optional]
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **updateResourceValue**
+> AsyncID updateResourceValue(deviceId, resourcePath, resourceValue, noResp)
+
+(DEPRECATED) Write to a Resource or use write-attributes (notification rules) for a Resource.
+
+(DEPRECATED) With this API, you can [write a new value to existing Resources](https://developer.pelion.com/docs/device-management/current/resources/handle-resource-webapp.html) or use the **write** attribute to set [notification rules](https://developer.pelion.com/docs/device-management/current/resources/resource-change-webapp.html) for the Resources. The notification rules only work on the device client side and may not be supported by all clients. This API can also be used to transfer files to the device. Device Management Connect LwM2M server implements Option 1 from RFC7959. The maximum block size is 1024 bytes. Note block size versus transferred file size in low-quality networks. The customer application needs to know what type of file is transferred (for example, TXT) and the customer can encrypt the payload. The maximum payload size is 1048576 bytes. All resource APIs are asynchronous. These APIs respond only if the device is on and connected to Device Management Connect, and there is an active notification channel. Supported content types depend on the device and its resource. Device Management translates HTTP to equivalent CoAP content type. **Example:** This example sets the alarm on a buzzer. The command writes the [Buzzer](http://www.openmobilealliance.org/tech/profiles/lwm2m/3338.xml) instance 0, \"On/Off\" boolean resource to '1'. ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v2/endpoints/{device-id}/3338/0/5850 \\ -H \"content-type: text/plain\" \\ -H 'Authorization: Bearer <access_key>' \\ -d '1' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataResourcesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataResourcesApi apiInstance = new DeviceDataResourcesApi();
+String deviceId = "deviceId_example"; // String | The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards.
+String resourcePath = "resourcePath_example"; // String | Resource URL.
+String resourceValue = "resourceValue_example"; // String | The value to set to the resource.
+Boolean noResp = true; // Boolean | If you make a request with `noResp=true`, Device Management Connect makes a CoAP non-confirmable request to the device. Such requests are not guaranteed to arrive to the device, and do not return an `async_response_id`. When a call with this parameter enabled succeeds, it return status code `204 No Content`. If the underlying protocol does not support non-confirmable requests, or if the endpoint is registered in queue mode, the response is status code `409 Conflict`.
+try {
+ AsyncID result = apiInstance.updateResourceValue(deviceId, resourcePath, resourceValue, noResp);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataResourcesApi#updateResourceValue");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **deviceId** | **String**| The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards. |
+ **resourcePath** | **String**| Resource URL. |
+ **resourceValue** | **String**| The value to set to the resource. |
+ **noResp** | **Boolean**| If you make a request with `noResp=true`, Device Management Connect makes a CoAP non-confirmable request to the device. Such requests are not guaranteed to arrive to the device, and do not return an `async_response_id`. When a call with this parameter enabled succeeds, it return status code `204 No Content`. If the underlying protocol does not support non-confirmable requests, or if the endpoint is registered in queue mode, the response is status code `409 Conflict`. | [optional]
+
+### Return type
+
+[**AsyncID**](AsyncID.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: text/plain, application/xml, application/octet-stream, application/exi, application/json, application/link-format, application/senml+json, application/nanoservice-tlv, application/vnd.oma.lwm2m+text, application/vnd.oma.lwm2m+opaq, application/vnd.oma.lwm2m+tlvapplication/vnd.oma.lwm2m+json,
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceDataSubscriptionsApi.md b/backends/pelioncloud_devicemanagement/docs/DeviceDataSubscriptionsApi.md
new file mode 100644
index 000000000..552093693
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceDataSubscriptionsApi.md
@@ -0,0 +1,454 @@
+# DeviceDataSubscriptionsApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**addResourceSubscription**](DeviceDataSubscriptionsApi.md#addResourceSubscription) | **PUT** v2/subscriptions/{device-id}/{resourcePath} | Subscribe to a resource to receive updates about resource changes.
+[**checkResourceSubscription**](DeviceDataSubscriptionsApi.md#checkResourceSubscription) | **GET** v2/subscriptions/{device-id}/{resourcePath} | Read the subscription status for a specific resource.
+[**deleteEndpointSubscriptions**](DeviceDataSubscriptionsApi.md#deleteEndpointSubscriptions) | **DELETE** v2/subscriptions/{device-id} | Delete all subscriptions on a device.
+[**deletePreSubscriptions**](DeviceDataSubscriptionsApi.md#deletePreSubscriptions) | **DELETE** v2/subscriptions | Remove pre-subscriptions.
+[**deleteResourceSubscription**](DeviceDataSubscriptionsApi.md#deleteResourceSubscription) | **DELETE** v2/subscriptions/{device-id}/{resourcePath} | Remove a subscription.
+[**getEndpointSubscriptions**](DeviceDataSubscriptionsApi.md#getEndpointSubscriptions) | **GET** v2/subscriptions/{device-id} | View all subscriptions on a device.
+[**getPreSubscriptions**](DeviceDataSubscriptionsApi.md#getPreSubscriptions) | **GET** v2/subscriptions | View pre-subscriptions.
+[**updatePreSubscriptions**](DeviceDataSubscriptionsApi.md#updatePreSubscriptions) | **PUT** v2/subscriptions | Set pre-subscriptions.
+
+
+
+# **addResourceSubscription**
+> Void addResourceSubscription(deviceId, resourcePath)
+
+Subscribe to a resource to receive updates about resource changes.
+
+ Subscribe to a resource to receive updated resource content, periodically or based on a more sophisticated solution-dependent logic. To place dynamic observation rules for individual object instances and resources and define when the device sends observations, set [notification rules](https://developer.pelion.com/docs/device-management/current/resources/resource-change-webapp.html). **Note:** Device Management removes all manual subscriptions during a full device registration, at which point applications must re-subscribe. To avoid this, use `/subscriptions` to set a pre-subscription. You can subscribe to resources, objects and object instances. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v2/subscriptions/{device-id}/{resourcePath} \\ -H 'Authorization: Bearer <access_key>' ``` **Important:** You must also call a [`/notification/callback`](https://developer.pelion.com/docs/device-management-api/notifications/) method for Device Management Connect to push resource change notifications.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataSubscriptionsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataSubscriptionsApi apiInstance = new DeviceDataSubscriptionsApi();
+String deviceId = "deviceId_example"; // String | The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards.
+String resourcePath = "resourcePath_example"; // String | The resource URL. This can be the path to: - An object; for example, `3303`. - An object instance; for example `3303/0`. - A resource; for example `3303/0/5602`. For more information about the Device Management resource model, please see the [Device Management documentation](https://developer.pelion.com/docs/device-management/current/resources/resource-model.html).
+try {
+ Void result = apiInstance.addResourceSubscription(deviceId, resourcePath);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataSubscriptionsApi#addResourceSubscription");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **deviceId** | **String**| The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards. |
+ **resourcePath** | **String**| The resource URL. This can be the path to: - An object; for example, `3303`. - An object instance; for example `3303/0`. - A resource; for example `3303/0/5602`. For more information about the Device Management resource model, please see the [Device Management documentation](https://developer.pelion.com/docs/device-management/current/resources/resource-model.html). |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **checkResourceSubscription**
+> Void checkResourceSubscription(deviceId, resourcePath)
+
+Read the subscription status for a specific resource.
+
+Check whether you are subscribed to receive resource content updates for a specific resource.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataSubscriptionsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataSubscriptionsApi apiInstance = new DeviceDataSubscriptionsApi();
+String deviceId = "deviceId_example"; // String | The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards.
+String resourcePath = "resourcePath_example"; // String | The resource URL. This can be the path to: - An object; for example, `3303`. - An object instance; for example `3303/0`. - A resource; for example `3303/0/5602`. For more information about the Device Management resource model, please see the [Device Management documentation](https://developer.pelion.com/docs/device-management/current/resources/resource-model.html).
+try {
+ Void result = apiInstance.checkResourceSubscription(deviceId, resourcePath);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataSubscriptionsApi#checkResourceSubscription");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **deviceId** | **String**| The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards. |
+ **resourcePath** | **String**| The resource URL. This can be the path to: - An object; for example, `3303`. - An object instance; for example `3303/0`. - A resource; for example `3303/0/5602`. For more information about the Device Management resource model, please see the [Device Management documentation](https://developer.pelion.com/docs/device-management/current/resources/resource-model.html). |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **deleteEndpointSubscriptions**
+> Void deleteEndpointSubscriptions(deviceId)
+
+Delete all subscriptions on a device.
+
+Delete all resource subscriptions in a single device. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v2/subscriptions/{device-id} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataSubscriptionsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataSubscriptionsApi apiInstance = new DeviceDataSubscriptionsApi();
+String deviceId = "deviceId_example"; // String | The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards.
+try {
+ Void result = apiInstance.deleteEndpointSubscriptions(deviceId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataSubscriptionsApi#deleteEndpointSubscriptions");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **deviceId** | **String**| The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **deletePreSubscriptions**
+> Void deletePreSubscriptions()
+
+Remove pre-subscriptions.
+
+Remove pre-subscriptions. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v2/subscriptions \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataSubscriptionsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataSubscriptionsApi apiInstance = new DeviceDataSubscriptionsApi();
+try {
+ Void result = apiInstance.deletePreSubscriptions();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataSubscriptionsApi#deletePreSubscriptions");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **deleteResourceSubscription**
+> Void deleteResourceSubscription(deviceId, resourcePath)
+
+Remove a subscription.
+
+Remove an existing subscription to a resource. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v2/subscriptions/{device-id}/{resourcePath} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataSubscriptionsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataSubscriptionsApi apiInstance = new DeviceDataSubscriptionsApi();
+String deviceId = "deviceId_example"; // String | The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards.
+String resourcePath = "resourcePath_example"; // String | The resource URL. This can be the path to: - An object; for example, `3303`. - An object instance; for example `3303/0`. - A resource; for example `3303/0/5602`. For more information about the Device Management resource model, please see the [Device Management documentation](https://developer.pelion.com/docs/device-management/current/resources/resource-model.html).
+try {
+ Void result = apiInstance.deleteResourceSubscription(deviceId, resourcePath);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataSubscriptionsApi#deleteResourceSubscription");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **deviceId** | **String**| The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards. |
+ **resourcePath** | **String**| The resource URL. This can be the path to: - An object; for example, `3303`. - An object instance; for example `3303/0`. - A resource; for example `3303/0/5602`. For more information about the Device Management resource model, please see the [Device Management documentation](https://developer.pelion.com/docs/device-management/current/resources/resource-model.html). |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getEndpointSubscriptions**
+> String getEndpointSubscriptions(deviceId)
+
+View all subscriptions on a device.
+
+Retrieve a list of all subscribed resources on a single device. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v2/subscriptions/{device-id} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataSubscriptionsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataSubscriptionsApi apiInstance = new DeviceDataSubscriptionsApi();
+String deviceId = "deviceId_example"; // String | The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards.
+try {
+ String result = apiInstance.getEndpointSubscriptions(deviceId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataSubscriptionsApi#getEndpointSubscriptions");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **deviceId** | **String**| The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards. |
+
+### Return type
+
+**String**
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: text/uri-list
+
+
+# **getPreSubscriptions**
+> PresubscriptionArray getPreSubscriptions()
+
+View pre-subscriptions.
+
+Retrieve pre-subscription data. The server returns a JSON structure. If there are no pre-subscribed resources, the server returns an empty array. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v2/subscriptions \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataSubscriptionsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataSubscriptionsApi apiInstance = new DeviceDataSubscriptionsApi();
+try {
+ PresubscriptionArray result = apiInstance.getPreSubscriptions();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataSubscriptionsApi#getPreSubscriptions");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**PresubscriptionArray**](PresubscriptionArray.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **updatePreSubscriptions**
+> Void updatePreSubscriptions(presubscription)
+
+Set pre-subscriptions.
+
+A pre-subscription is a set of rules you define to subscribe to specific resources automatically when certain devices register or does a register update. You can set subscription rules based on the endpoint ID (optionally having an `*` character at the end), endpoint type, a list of resources, or expressions with an `*` character at the end. When a device that meets the subscription rules registered, Device Management Connect automatically sends subscription requests to the device for the resources you specify. To remove the pre-subscription data, put an empty array as a rule. To place dynamic observation rules for individual object instances and resources and define when the device sends observations, set [notification rules](https://developer.pelion.com/docs/device-management/current/resources/resource-change-webapp.html). **Note:** The subscription is bound to the application you are using. To get notifications of the resource value changes, you need to create an [event notification channel](https://developer.pelion.com/docs/device-management/current/integrate-web-app/event-notification.html) with an access key of the same application. **Example request:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v2/subscriptions \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[ { \"endpoint-name\": \"node-001\", \"resource-path\": [\"/dev\"] }, { \"endpoint-type\": \"Light\", \"resource-path\": [\"/sen/_*\"] }, { \"endpoint-name\": \"node*\" }, { \"endpoint-type\": \"Sensor\" }, { \"resource-path\": [\"/dev/temp\",\"/dev/hum\"] } ]' ``` - Subscribe to `/dev` resource of endpoint named `node-001`. - Subscribe to `Light` type of endpoints and their resources prefixed with `/sen/`. - Subscribe to all observable resources of endpoint names prefixed with `node`. - Subscribe to all observable resources of `Sensor` type endpoints. - Subscribe to `/dev/temp` and `/dev/hum` resources of all endpoints. **Limits**: - The maximum length of the endpoint name and endpoint type is 64 characters. - The maximum length of the resource path is 128 characters. - You can subscribe to 256 separate resource paths. - The maximum number of pre-subscription entries is 1024. **Note**: To save bandwidth and avoid unnecessary traffic, use resource path patterns to limit the matching resources in the presubscription data. This prevents your web application from receiving unwanted resource notifications. See [Subscribe only to what you need](https://developer.pelion.com/docs/device-management/current/resources/resource-change-webapp.html).
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDataSubscriptionsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDataSubscriptionsApi apiInstance = new DeviceDataSubscriptionsApi();
+PresubscriptionArray presubscription = new PresubscriptionArray(); // PresubscriptionArray | Array of pre-subscriptions.
+try {
+ Void result = apiInstance.updatePreSubscriptions(presubscription);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDataSubscriptionsApi#updatePreSubscriptions");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **presubscription** | [**PresubscriptionArray**](PresubscriptionArray.md)| Array of pre-subscriptions. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: text/plain
+
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryDeviceQueriesApi.md b/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryDeviceQueriesApi.md
new file mode 100644
index 000000000..cf8a55ded
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryDeviceQueriesApi.md
@@ -0,0 +1,338 @@
+# DeviceDirectoryDeviceQueriesApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**deviceQueryCreate**](DeviceDirectoryDeviceQueriesApi.md#deviceQueryCreate) | **POST** v3/device-queries/ | Create a device query.
+[**deviceQueryDestroy**](DeviceDirectoryDeviceQueriesApi.md#deviceQueryDestroy) | **DELETE** v3/device-queries/{query_id}/ | Delete a device query.
+[**deviceQueryList**](DeviceDirectoryDeviceQueriesApi.md#deviceQueryList) | **GET** v3/device-queries/ | List device queries.
+[**deviceQueryRetrieve**](DeviceDirectoryDeviceQueriesApi.md#deviceQueryRetrieve) | **GET** v3/device-queries/{query_id}/ | Retrieve a device query.
+[**deviceQueryUpdate**](DeviceDirectoryDeviceQueriesApi.md#deviceQueryUpdate) | **PUT** v3/device-queries/{query_id}/ | Update a device query.
+
+
+
+# **deviceQueryCreate**
+> DeviceQuery deviceQueryCreate(device)
+
+Create a device query.
+
+Create a new device query.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDirectoryDeviceQueriesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDirectoryDeviceQueriesApi apiInstance = new DeviceDirectoryDeviceQueriesApi();
+DeviceQueryPostPutRequest device = new DeviceQueryPostPutRequest(); // DeviceQueryPostPutRequest |
+try {
+ DeviceQuery result = apiInstance.deviceQueryCreate(device);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDirectoryDeviceQueriesApi#deviceQueryCreate");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **device** | [**DeviceQueryPostPutRequest**](DeviceQueryPostPutRequest.md)| |
+
+### Return type
+
+[**DeviceQuery**](DeviceQuery.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **deviceQueryDestroy**
+> Void deviceQueryDestroy(queryId)
+
+Delete a device query.
+
+Delete a device query.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDirectoryDeviceQueriesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDirectoryDeviceQueriesApi apiInstance = new DeviceDirectoryDeviceQueriesApi();
+String queryId = "queryId_example"; // String |
+try {
+ Void result = apiInstance.deviceQueryDestroy(queryId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDirectoryDeviceQueriesApi#deviceQueryDestroy");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **queryId** | **String**| |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **deviceQueryList**
+> DeviceQueryPage deviceQueryList(limit, order, after, include, filter, createdAtIn, createdAtNin, createdAtLte, createdAtGte, idEq, idNeq, idIn, idNin, nameEq, nameNeq, nameIn, nameNin, queryEq, queryNeq, queryIn, queryNin, updatedAtIn, updatedAtNin, updatedAtLte, updatedAtGte)
+
+List device queries.
+
+List all device queries.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDirectoryDeviceQueriesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDirectoryDeviceQueriesApi apiInstance = new DeviceDirectoryDeviceQueriesApi();
+Integer limit = 56; // Integer | How many objects to retrieve in the page (2-1000). Limit values outside of this range are set to the closest limit.
+String order = "order_example"; // String | Record order. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The ID of the item after which to retrieve the next page.
+String include = "include_example"; // String | Comma-separated list of data fields to return. Currently supported: `total_count`.
+String filter = "filter_example"; // String | URL-encoded query string parameter to filter returned data. ##### Filtering `?filter={URL encoded query string}` The query string is made up of key/value pairs separated by ampersands. So for a query of `key1=value1&key2=value2&key3=value3`, this would be encoded as: `?filter=key1%3Dvalue1%26key2%3Dvalue2%26key3%3Dvalue3`. ###### Filterable fields The below table lists all filterable fields:
| Field | = / __eq / __neq | __in / __nin | __lte / __gte |
| created_at | ✓ | ✓ | ✓ |
| etag | ✓ | ✓ | ✓ |
| id | ✓ | ✓ | |
| name | ✓ | ✓ | |
| query | ✓ | ✓ | |
| updated_at | ✓ | ✓ | ✓ |
The examples below show the queries in *unencoded* form. ###### By device query properties (all properties are filterable): For example: `description={value}` ###### On date-time fields: Date-time fields should be specified in UTC RFC3339 format `YYYY-MM-DDThh:mm:ss.msZ`. There are three permitted variations: * UTC RFC3339 with milliseconds, for example, 2016-11-30T16:25:12.1234Z. * UTC RFC3339 without milliseconds, for example, 2016-11-30T16:25:12Z. * UTC RFC3339 shortened - without milliseconds and punctuation, for example, 20161130T162512Z. Date-time filtering supports three operators: * Equality. * Greater than or equal to – field name suffixed with `__gte`. * Less than or equal to – field name suffixed with `__lte`. Lower and upper limits to a date-time range may be specified by including both the `__gte` and `__lte` forms in the filter: `{field name}[|__lte|__gte]={UTC RFC3339 date-time}`. ##### Multi-field example `query_id=0158d38771f70000000000010010038c&created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z` Encoded: `filter=query_id%3D0158d38771f70000000000010010038c%26created_at__gte%3D2016-11-30T16%3A25%3A12.1234Z%26created_at__lte%3D2016-11-30T00%3A00%3A00Z` ##### Filtering with filter operators String field filtering supports the following operators: * Equality: `__eq`. * Non-equality: `__neq`. * In : `__in`. * Not in: `__nin`. For `__in` and `__nin` filters list of parameters must be comma-separated: `name__nin=query1,query2`
+String createdAtIn = "createdAtIn_example"; // String | in filter for the \"created_at\" field
+String createdAtNin = "createdAtNin_example"; // String | nin filter for the \"created_at\" field
+DateTime createdAtLte = new DateTime(); // DateTime | lte filter for the \"created_at\" field
+DateTime createdAtGte = new DateTime(); // DateTime | gte filter for the \"created_at\" field
+String idEq = "idEq_example"; // String | eq filter for the \"id\" field
+String idNeq = "idNeq_example"; // String | neq filter for the \"id\" field
+String idIn = "idIn_example"; // String | in filter for the \"id\" field
+String idNin = "idNin_example"; // String | nin filter for the \"id\" field
+String nameEq = "nameEq_example"; // String | eq filter for the \"name\" field
+String nameNeq = "nameNeq_example"; // String | neq filter for the \"name\" field
+String nameIn = "nameIn_example"; // String | in filter for the \"name\" field
+String nameNin = "nameNin_example"; // String | nin filter for the \"name\" field
+String queryEq = "queryEq_example"; // String | eq filter for the \"query\" field
+String queryNeq = "queryNeq_example"; // String | neq filter for the \"query\" field
+String queryIn = "queryIn_example"; // String | in filter for the \"query\" field
+String queryNin = "queryNin_example"; // String | nin filter for the \"query\" field
+String updatedAtIn = "updatedAtIn_example"; // String | in filter for the \"updated_at\" field
+String updatedAtNin = "updatedAtNin_example"; // String | nin filter for the \"updated_at\" field
+DateTime updatedAtLte = new DateTime(); // DateTime | lte filter for the \"updated_at\" field
+DateTime updatedAtGte = new DateTime(); // DateTime | gte filter for the \"updated_at\" field
+try {
+ DeviceQueryPage result = apiInstance.deviceQueryList(limit, order, after, include, filter, createdAtIn, createdAtNin, createdAtLte, createdAtGte, idEq, idNeq, idIn, idNin, nameEq, nameNeq, nameIn, nameNin, queryEq, queryNeq, queryIn, queryNin, updatedAtIn, updatedAtNin, updatedAtLte, updatedAtGte);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDirectoryDeviceQueriesApi#deviceQueryList");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **limit** | **Integer**| How many objects to retrieve in the page (2-1000). Limit values outside of this range are set to the closest limit. | [optional]
+ **order** | **String**| Record order. Acceptable values: ASC, DESC. Default: ASC. | [optional]
+ **after** | **String**| The ID of the item after which to retrieve the next page. | [optional]
+ **include** | **String**| Comma-separated list of data fields to return. Currently supported: `total_count`. | [optional]
+ **filter** | **String**| URL-encoded query string parameter to filter returned data. ##### Filtering `?filter={URL encoded query string}` The query string is made up of key/value pairs separated by ampersands. So for a query of `key1=value1&key2=value2&key3=value3`, this would be encoded as: `?filter=key1%3Dvalue1%26key2%3Dvalue2%26key3%3Dvalue3`. ###### Filterable fields The below table lists all filterable fields: <table> <thead> <tr> <th>Field</th> <th>= / __eq / __neq</th> <th>__in / __nin</th> <th>__lte / __gte</th> <tr> <thead> <tbody> <tr> <td>created_at</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> <tr> <td>etag</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> <tr> <td>id</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>name</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>query</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>updated_at</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> </tbody> </table> The examples below show the queries in *unencoded* form. ###### By device query properties (all properties are filterable): For example: `description={value}` ###### On date-time fields: Date-time fields should be specified in UTC RFC3339 format `YYYY-MM-DDThh:mm:ss.msZ`. There are three permitted variations: * UTC RFC3339 with milliseconds, for example, 2016-11-30T16:25:12.1234Z. * UTC RFC3339 without milliseconds, for example, 2016-11-30T16:25:12Z. * UTC RFC3339 shortened - without milliseconds and punctuation, for example, 20161130T162512Z. Date-time filtering supports three operators: * Equality. * Greater than or equal to – field name suffixed with `__gte`. * Less than or equal to – field name suffixed with `__lte`. Lower and upper limits to a date-time range may be specified by including both the `__gte` and `__lte` forms in the filter: `{field name}[|__lte|__gte]={UTC RFC3339 date-time}`. ##### Multi-field example `query_id=0158d38771f70000000000010010038c&created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z` Encoded: `filter=query_id%3D0158d38771f70000000000010010038c%26created_at__gte%3D2016-11-30T16%3A25%3A12.1234Z%26created_at__lte%3D2016-11-30T00%3A00%3A00Z` ##### Filtering with filter operators String field filtering supports the following operators: * Equality: `__eq`. * Non-equality: `__neq`. * In : `__in`. * Not in: `__nin`. For `__in` and `__nin` filters list of parameters must be comma-separated: `name__nin=query1,query2` | [optional]
+ **createdAtIn** | **String**| in filter for the \"created_at\" field | [optional]
+ **createdAtNin** | **String**| nin filter for the \"created_at\" field | [optional]
+ **createdAtLte** | **DateTime**| lte filter for the \"created_at\" field | [optional]
+ **createdAtGte** | **DateTime**| gte filter for the \"created_at\" field | [optional]
+ **idEq** | **String**| eq filter for the \"id\" field | [optional]
+ **idNeq** | **String**| neq filter for the \"id\" field | [optional]
+ **idIn** | **String**| in filter for the \"id\" field | [optional]
+ **idNin** | **String**| nin filter for the \"id\" field | [optional]
+ **nameEq** | **String**| eq filter for the \"name\" field | [optional]
+ **nameNeq** | **String**| neq filter for the \"name\" field | [optional]
+ **nameIn** | **String**| in filter for the \"name\" field | [optional]
+ **nameNin** | **String**| nin filter for the \"name\" field | [optional]
+ **queryEq** | **String**| eq filter for the \"query\" field | [optional]
+ **queryNeq** | **String**| neq filter for the \"query\" field | [optional]
+ **queryIn** | **String**| in filter for the \"query\" field | [optional]
+ **queryNin** | **String**| nin filter for the \"query\" field | [optional]
+ **updatedAtIn** | **String**| in filter for the \"updated_at\" field | [optional]
+ **updatedAtNin** | **String**| nin filter for the \"updated_at\" field | [optional]
+ **updatedAtLte** | **DateTime**| lte filter for the \"updated_at\" field | [optional]
+ **updatedAtGte** | **DateTime**| gte filter for the \"updated_at\" field | [optional]
+
+### Return type
+
+[**DeviceQueryPage**](DeviceQueryPage.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **deviceQueryRetrieve**
+> DeviceQuery deviceQueryRetrieve(queryId)
+
+Retrieve a device query.
+
+Retrieve a specific device query.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDirectoryDeviceQueriesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDirectoryDeviceQueriesApi apiInstance = new DeviceDirectoryDeviceQueriesApi();
+String queryId = "queryId_example"; // String |
+try {
+ DeviceQuery result = apiInstance.deviceQueryRetrieve(queryId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDirectoryDeviceQueriesApi#deviceQueryRetrieve");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **queryId** | **String**| |
+
+### Return type
+
+[**DeviceQuery**](DeviceQuery.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **deviceQueryUpdate**
+> DeviceQuery deviceQueryUpdate(queryId, body)
+
+Update a device query.
+
+Update a specifc device query.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceDirectoryDeviceQueriesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceDirectoryDeviceQueriesApi apiInstance = new DeviceDirectoryDeviceQueriesApi();
+String queryId = "queryId_example"; // String |
+DeviceQueryPostPutRequest body = new DeviceQueryPostPutRequest(); // DeviceQueryPostPutRequest | Device query update object.
+try {
+ DeviceQuery result = apiInstance.deviceQueryUpdate(queryId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceDirectoryDeviceQueriesApi#deviceQueryUpdate");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **queryId** | **String**| |
+ **body** | [**DeviceQueryPostPutRequest**](DeviceQueryPostPutRequest.md)| Device query update object. |
+
+### Return type
+
+[**DeviceQuery**](DeviceQuery.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryDevicesApi.md b/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryDevicesApi.md
index 5f6267acc..e6735508d 100644
--- a/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryDevicesApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryDevicesApi.md
@@ -17,7 +17,7 @@ Method | HTTP request | Description
Create a device.
-Create a new device.
+Create a new device in Device Management. Usually you do not need to create a device this way, as it is automatically created when it bootstraps or connects to Device Management.
### Example
```java
@@ -72,7 +72,7 @@ Name | Type | Description | Notes
Delete a device.
-Delete device. Only available for devices with a developer certificate. Attempting to delete a device with a production certicate returns a 400 response.
+Delete device. Only available for devices with a developer certificate. Attempting to delete a device with a production certificate returns a 400 response.
### Example
```java
@@ -92,7 +92,7 @@ Bearer.setApiKey("YOUR API KEY");
//Bearer.setApiKeyPrefix("Token");
DeviceDirectoryDevicesApi apiInstance = new DeviceDirectoryDevicesApi();
-String id = "id_example"; // String | The ID of the device.
+String id = "id_example"; // String | The [Device ID](https://developer.pelion.com/docs/device-management/current/connecting/device-identity.html) created by Device Management.
try {
Void result = apiInstance.deviceDestroy(id);
System.out.println(result);
@@ -106,7 +106,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **id** | **String**| The ID of the device. |
+ **id** | **String**| The [Device ID](https://developer.pelion.com/docs/device-management/current/connecting/device-identity.html) created by Device Management. |
### Return type
@@ -123,11 +123,11 @@ Name | Type | Description | Notes
# **deviceList**
-> DevicePage deviceList(limit, order, after, include, lifecycleStatusEq, lifecycleStatusNeq, lifecycleStatusIn, lifecycleStatusNin, operatorSuspendedEq, operatorSuspendedNeq, lastOperatorSuspendedCategoryEq, lastOperatorSuspendedCategoryNeq, lastOperatorSuspendedCategoryIn, lastOperatorSuspendedCategoryNin, lastOperatorSuspendedUpdatedAtIn, lastOperatorSuspendedUpdatedAtNin, lastOperatorSuspendedUpdatedAtLte, lastOperatorSuspendedUpdatedAtGte, systemSuspendedEq, systemSuspendedNeq, lastSystemSuspendedCategoryEq, lastSystemSuspendedCategoryNeq, lastSystemSuspendedCategoryIn, lastSystemSuspendedCategoryNin, lastSystemSuspendedUpdatedAtIn, lastSystemSuspendedUpdatedAtNin, lastSystemSuspendedUpdatedAtLte, lastSystemSuspendedUpdatedAtGte, accountIdEq, accountIdNeq, accountIdIn, accountIdNin, autoUpdateEq, autoUpdateNeq, bootstrapExpirationDateIn, bootstrapExpirationDateNin, bootstrapExpirationDateLte, bootstrapExpirationDateGte, bootstrappedTimestampIn, bootstrappedTimestampNin, bootstrappedTimestampLte, bootstrappedTimestampGte, caIdEq, caIdNeq, caIdIn, caIdNin, connectorExpirationDateIn, connectorExpirationDateNin, connectorExpirationDateLte, connectorExpirationDateGte, createdAtIn, createdAtNin, createdAtLte, createdAtGte, deployedStateEq, deployedStateNeq, deployedStateIn, deployedStateNin, deploymentEq, deploymentNeq, deploymentIn, deploymentNin, descriptionEq, descriptionNeq, descriptionIn, descriptionNin, deviceClassEq, deviceClassNeq, deviceClassIn, deviceClassNin, deviceExecutionModeEq, deviceExecutionModeNeq, deviceExecutionModeIn, deviceExecutionModeNin, deviceKeyEq, deviceKeyNeq, deviceKeyIn, deviceKeyNin, endpointNameEq, endpointNameNeq, endpointNameIn, endpointNameNin, endpointTypeEq, endpointTypeNeq, endpointTypeIn, endpointTypeNin, enrolmentListTimestampIn, enrolmentListTimestampNin, enrolmentListTimestampLte, enrolmentListTimestampGte, firmwareChecksumEq, firmwareChecksumNeq, firmwareChecksumIn, firmwareChecksumNin, hostGatewayEq, hostGatewayNeq, hostGatewayIn, hostGatewayNin, idEq, idNeq, idIn, idNin, manifestEq, manifestNeq, manifestIn, manifestNin, manifestTimestampIn, manifestTimestampNin, manifestTimestampLte, manifestTimestampGte, mechanismEq, mechanismNeq, mechanismIn, mechanismNin, mechanismUrlEq, mechanismUrlNeq, mechanismUrlIn, mechanismUrlNin, nameEq, nameNeq, nameIn, nameNin, serialNumberEq, serialNumberNeq, serialNumberIn, serialNumberNin, stateEq, stateNeq, stateIn, stateNin, updatedAtIn, updatedAtNin, updatedAtLte, updatedAtGte, vendorIdEq, vendorIdNeq, vendorIdIn, vendorIdNin)
+> DevicePage deviceList(limit, order, after, filter, include, lifecycleStatusEq, lifecycleStatusNeq, lifecycleStatusIn, lifecycleStatusNin, operatorSuspendedEq, operatorSuspendedNeq, lastOperatorSuspendedCategoryEq, lastOperatorSuspendedCategoryNeq, lastOperatorSuspendedCategoryIn, lastOperatorSuspendedCategoryNin, lastOperatorSuspendedUpdatedAtIn, lastOperatorSuspendedUpdatedAtNin, lastOperatorSuspendedUpdatedAtLte, lastOperatorSuspendedUpdatedAtGte, systemSuspendedEq, systemSuspendedNeq, lastSystemSuspendedCategoryEq, lastSystemSuspendedCategoryNeq, lastSystemSuspendedCategoryIn, lastSystemSuspendedCategoryNin, lastSystemSuspendedUpdatedAtIn, lastSystemSuspendedUpdatedAtNin, lastSystemSuspendedUpdatedAtLte, lastSystemSuspendedUpdatedAtGte, accountIdEq, accountIdNeq, accountIdIn, accountIdNin, autoUpdateEq, autoUpdateNeq, bootstrapExpirationDateIn, bootstrapExpirationDateNin, bootstrapExpirationDateLte, bootstrapExpirationDateGte, bootstrappedTimestampIn, bootstrappedTimestampNin, bootstrappedTimestampLte, bootstrappedTimestampGte, caIdEq, caIdNeq, caIdIn, caIdNin, connectorExpirationDateIn, connectorExpirationDateNin, connectorExpirationDateLte, connectorExpirationDateGte, createdAtIn, createdAtNin, createdAtLte, createdAtGte, deployedStateEq, deployedStateNeq, deployedStateIn, deployedStateNin, deploymentEq, deploymentNeq, deploymentIn, deploymentNin, descriptionEq, descriptionNeq, descriptionIn, descriptionNin, deviceClassEq, deviceClassNeq, deviceClassIn, deviceClassNin, deviceExecutionModeEq, deviceExecutionModeNeq, deviceExecutionModeIn, deviceExecutionModeNin, deviceKeyEq, deviceKeyNeq, deviceKeyIn, deviceKeyNin, endpointNameEq, endpointNameNeq, endpointNameIn, endpointNameNin, endpointTypeEq, endpointTypeNeq, endpointTypeIn, endpointTypeNin, enrolmentListTimestampIn, enrolmentListTimestampNin, enrolmentListTimestampLte, enrolmentListTimestampGte, firmwareChecksumEq, firmwareChecksumNeq, firmwareChecksumIn, firmwareChecksumNin, hostGatewayEq, hostGatewayNeq, hostGatewayIn, hostGatewayNin, idEq, idNeq, idIn, idNin, manifestEq, manifestNeq, manifestIn, manifestNin, manifestTimestampIn, manifestTimestampNin, manifestTimestampLte, manifestTimestampGte, mechanismEq, mechanismNeq, mechanismIn, mechanismNin, mechanismUrlEq, mechanismUrlNeq, mechanismUrlIn, mechanismUrlNin, nameEq, nameNeq, nameIn, nameNin, netIdEq, netIdNeq, netIdIn, netIdNin, serialNumberEq, serialNumberNeq, serialNumberIn, serialNumberNin, stateEq, stateNeq, stateIn, stateNin, updatedAtIn, updatedAtNin, updatedAtLte, updatedAtGte, vendorIdEq, vendorIdNeq, vendorIdIn, vendorIdNin)
List all devices.
-List all devices. **Example:** Following example filters devices according to state field and returns only devices in 'registered' state: ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/devices?filter=state%3Dregistered \\ -H 'Authorization: Bearer <API key>' ```
+List all devices enrolled to Device Management for the account. The URL length must be fewer than 4096 characters. Requests that exceed this limit, such as those including too many query parameters in a filter, fail with a bad request response. devices with too long list of query parameters, the request is deemed as bad request. **Example:** Following example filters devices according to state field and returns only devices in 'registered' state: ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/devices?filter=state%3Dregistered \\ -H 'Authorization: Bearer <API key>' ```
### Example
```java
@@ -150,6 +150,7 @@ DeviceDirectoryDevicesApi apiInstance = new DeviceDirectoryDevicesApi();
Integer limit = 56; // Integer | How many objects to retrieve in the page (2-1000). Limit values outside of this range are set to the closest limit.
String order = "order_example"; // String | Record order. Acceptable values: ASC, DESC. Default: ASC.
String after = "after_example"; // String | The ID of the item after which to retrieve the next page.
+String filter = "filter_example"; // String | URL encoded query string parameter to filter returned data. ##### Filtering ```?filter={URL encoded query string}``` The query string is made up of key/value pairs separated by ampersands. So for a query of ```key1=value1&key2=value2&key3=value3``` this would be encoded as follows: ```?filter=key1%3Dvalue1%26key2%3Dvalue2%26key3%3Dvalue3``` The examples below show the queries in *unencoded* form. ###### By device properties (all properties are filterable): ```state=[unenrolled|cloud_enrolling|bootstrapped|registered]``` ```device_class={value}``` ###### On date-time fields: Date-time fields should be specified in UTC RFC3339 format ```YYYY-MM-DDThh:mm:ss.msZ```. There are three permitted variations: * UTC RFC3339 with milliseconds e.g. 2016-11-30T16:25:12.1234Z * UTC RFC3339 without milliseconds e.g. 2016-11-30T16:25:12Z * UTC RFC3339 shortened - without milliseconds and punctuation e.g. 20161130T162512Z Date-time filtering supports three operators: * equality * greater than or equal to – field name suffixed with ```__gte``` * less than or equal to – field name suffixed with ```__lte``` Lower and upper limits to a date-time range may be specified by including both the ```__gte``` and ```__lte``` forms in the filter. ```{field name}[|__lte|__gte]={UTC RFC3339 date-time}``` ###### On device custom attributes: ```custom_attributes__{param}={value}``` ```custom_attributes__tag=TAG1``` ###### On device component attributes: ```component_attributes__{name}={version}``` ```component_attributes__ble=1.2.3``` ##### Multi-field example ```state=bootstrapped&created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z``` Encoded: ```?filter=state%3Dbootstrapped%26created_at__gte%3D2016-11-30T16%3A25%3A12.1234Z%26created_at__lte%3D2016-11-30T00%3A00%3A00Z``` ##### Filtering with filter operators String field filtering supports the following operators: * equality: `__eq` * non-equality: `__neq` * in : `__in` * not in: `__nin` For `__in` and `__nin` filters list of parameters must be comma-separated: `state__nin=unenrolled,dergistered`
String include = "include_example"; // String | Comma-separated list of data fields to return. Currently supported: `total_count`.
String lifecycleStatusEq = "lifecycleStatusEq_example"; // String | eq filter for the \"lifecycle_status\" field
String lifecycleStatusNeq = "lifecycleStatusNeq_example"; // String | neq filter for the \"lifecycle_status\" field
@@ -269,6 +270,10 @@ String nameEq = "nameEq_example"; // String | eq filter for the \"name\" field
String nameNeq = "nameNeq_example"; // String | neq filter for the \"name\" field
String nameIn = "nameIn_example"; // String | in filter for the \"name\" field
String nameNin = "nameNin_example"; // String | nin filter for the \"name\" field
+String netIdEq = "netIdEq_example"; // String | eq filter for the \"net_id\" field
+String netIdNeq = "netIdNeq_example"; // String | neq filter for the \"net_id\" field
+String netIdIn = "netIdIn_example"; // String | in filter for the \"net_id\" field
+String netIdNin = "netIdNin_example"; // String | nin filter for the \"net_id\" field
String serialNumberEq = "serialNumberEq_example"; // String | eq filter for the \"serial_number\" field
String serialNumberNeq = "serialNumberNeq_example"; // String | neq filter for the \"serial_number\" field
String serialNumberIn = "serialNumberIn_example"; // String | in filter for the \"serial_number\" field
@@ -286,7 +291,7 @@ String vendorIdNeq = "vendorIdNeq_example"; // String | neq filter for the \"ven
String vendorIdIn = "vendorIdIn_example"; // String | in filter for the \"vendor_id\" field
String vendorIdNin = "vendorIdNin_example"; // String | nin filter for the \"vendor_id\" field
try {
- DevicePage result = apiInstance.deviceList(limit, order, after, include, lifecycleStatusEq, lifecycleStatusNeq, lifecycleStatusIn, lifecycleStatusNin, operatorSuspendedEq, operatorSuspendedNeq, lastOperatorSuspendedCategoryEq, lastOperatorSuspendedCategoryNeq, lastOperatorSuspendedCategoryIn, lastOperatorSuspendedCategoryNin, lastOperatorSuspendedUpdatedAtIn, lastOperatorSuspendedUpdatedAtNin, lastOperatorSuspendedUpdatedAtLte, lastOperatorSuspendedUpdatedAtGte, systemSuspendedEq, systemSuspendedNeq, lastSystemSuspendedCategoryEq, lastSystemSuspendedCategoryNeq, lastSystemSuspendedCategoryIn, lastSystemSuspendedCategoryNin, lastSystemSuspendedUpdatedAtIn, lastSystemSuspendedUpdatedAtNin, lastSystemSuspendedUpdatedAtLte, lastSystemSuspendedUpdatedAtGte, accountIdEq, accountIdNeq, accountIdIn, accountIdNin, autoUpdateEq, autoUpdateNeq, bootstrapExpirationDateIn, bootstrapExpirationDateNin, bootstrapExpirationDateLte, bootstrapExpirationDateGte, bootstrappedTimestampIn, bootstrappedTimestampNin, bootstrappedTimestampLte, bootstrappedTimestampGte, caIdEq, caIdNeq, caIdIn, caIdNin, connectorExpirationDateIn, connectorExpirationDateNin, connectorExpirationDateLte, connectorExpirationDateGte, createdAtIn, createdAtNin, createdAtLte, createdAtGte, deployedStateEq, deployedStateNeq, deployedStateIn, deployedStateNin, deploymentEq, deploymentNeq, deploymentIn, deploymentNin, descriptionEq, descriptionNeq, descriptionIn, descriptionNin, deviceClassEq, deviceClassNeq, deviceClassIn, deviceClassNin, deviceExecutionModeEq, deviceExecutionModeNeq, deviceExecutionModeIn, deviceExecutionModeNin, deviceKeyEq, deviceKeyNeq, deviceKeyIn, deviceKeyNin, endpointNameEq, endpointNameNeq, endpointNameIn, endpointNameNin, endpointTypeEq, endpointTypeNeq, endpointTypeIn, endpointTypeNin, enrolmentListTimestampIn, enrolmentListTimestampNin, enrolmentListTimestampLte, enrolmentListTimestampGte, firmwareChecksumEq, firmwareChecksumNeq, firmwareChecksumIn, firmwareChecksumNin, hostGatewayEq, hostGatewayNeq, hostGatewayIn, hostGatewayNin, idEq, idNeq, idIn, idNin, manifestEq, manifestNeq, manifestIn, manifestNin, manifestTimestampIn, manifestTimestampNin, manifestTimestampLte, manifestTimestampGte, mechanismEq, mechanismNeq, mechanismIn, mechanismNin, mechanismUrlEq, mechanismUrlNeq, mechanismUrlIn, mechanismUrlNin, nameEq, nameNeq, nameIn, nameNin, serialNumberEq, serialNumberNeq, serialNumberIn, serialNumberNin, stateEq, stateNeq, stateIn, stateNin, updatedAtIn, updatedAtNin, updatedAtLte, updatedAtGte, vendorIdEq, vendorIdNeq, vendorIdIn, vendorIdNin);
+ DevicePage result = apiInstance.deviceList(limit, order, after, filter, include, lifecycleStatusEq, lifecycleStatusNeq, lifecycleStatusIn, lifecycleStatusNin, operatorSuspendedEq, operatorSuspendedNeq, lastOperatorSuspendedCategoryEq, lastOperatorSuspendedCategoryNeq, lastOperatorSuspendedCategoryIn, lastOperatorSuspendedCategoryNin, lastOperatorSuspendedUpdatedAtIn, lastOperatorSuspendedUpdatedAtNin, lastOperatorSuspendedUpdatedAtLte, lastOperatorSuspendedUpdatedAtGte, systemSuspendedEq, systemSuspendedNeq, lastSystemSuspendedCategoryEq, lastSystemSuspendedCategoryNeq, lastSystemSuspendedCategoryIn, lastSystemSuspendedCategoryNin, lastSystemSuspendedUpdatedAtIn, lastSystemSuspendedUpdatedAtNin, lastSystemSuspendedUpdatedAtLte, lastSystemSuspendedUpdatedAtGte, accountIdEq, accountIdNeq, accountIdIn, accountIdNin, autoUpdateEq, autoUpdateNeq, bootstrapExpirationDateIn, bootstrapExpirationDateNin, bootstrapExpirationDateLte, bootstrapExpirationDateGte, bootstrappedTimestampIn, bootstrappedTimestampNin, bootstrappedTimestampLte, bootstrappedTimestampGte, caIdEq, caIdNeq, caIdIn, caIdNin, connectorExpirationDateIn, connectorExpirationDateNin, connectorExpirationDateLte, connectorExpirationDateGte, createdAtIn, createdAtNin, createdAtLte, createdAtGte, deployedStateEq, deployedStateNeq, deployedStateIn, deployedStateNin, deploymentEq, deploymentNeq, deploymentIn, deploymentNin, descriptionEq, descriptionNeq, descriptionIn, descriptionNin, deviceClassEq, deviceClassNeq, deviceClassIn, deviceClassNin, deviceExecutionModeEq, deviceExecutionModeNeq, deviceExecutionModeIn, deviceExecutionModeNin, deviceKeyEq, deviceKeyNeq, deviceKeyIn, deviceKeyNin, endpointNameEq, endpointNameNeq, endpointNameIn, endpointNameNin, endpointTypeEq, endpointTypeNeq, endpointTypeIn, endpointTypeNin, enrolmentListTimestampIn, enrolmentListTimestampNin, enrolmentListTimestampLte, enrolmentListTimestampGte, firmwareChecksumEq, firmwareChecksumNeq, firmwareChecksumIn, firmwareChecksumNin, hostGatewayEq, hostGatewayNeq, hostGatewayIn, hostGatewayNin, idEq, idNeq, idIn, idNin, manifestEq, manifestNeq, manifestIn, manifestNin, manifestTimestampIn, manifestTimestampNin, manifestTimestampLte, manifestTimestampGte, mechanismEq, mechanismNeq, mechanismIn, mechanismNin, mechanismUrlEq, mechanismUrlNeq, mechanismUrlIn, mechanismUrlNin, nameEq, nameNeq, nameIn, nameNin, netIdEq, netIdNeq, netIdIn, netIdNin, serialNumberEq, serialNumberNeq, serialNumberIn, serialNumberNin, stateEq, stateNeq, stateIn, stateNin, updatedAtIn, updatedAtNin, updatedAtLte, updatedAtGte, vendorIdEq, vendorIdNeq, vendorIdIn, vendorIdNin);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling DeviceDirectoryDevicesApi#deviceList");
@@ -301,6 +306,7 @@ Name | Type | Description | Notes
**limit** | **Integer**| How many objects to retrieve in the page (2-1000). Limit values outside of this range are set to the closest limit. | [optional]
**order** | **String**| Record order. Acceptable values: ASC, DESC. Default: ASC. | [optional]
**after** | **String**| The ID of the item after which to retrieve the next page. | [optional]
+ **filter** | **String**| URL encoded query string parameter to filter returned data. ##### Filtering ```?filter={URL encoded query string}``` The query string is made up of key/value pairs separated by ampersands. So for a query of ```key1=value1&key2=value2&key3=value3``` this would be encoded as follows: ```?filter=key1%3Dvalue1%26key2%3Dvalue2%26key3%3Dvalue3``` The examples below show the queries in *unencoded* form. ###### By device properties (all properties are filterable): ```state=[unenrolled|cloud_enrolling|bootstrapped|registered]``` ```device_class={value}``` ###### On date-time fields: Date-time fields should be specified in UTC RFC3339 format ```YYYY-MM-DDThh:mm:ss.msZ```. There are three permitted variations: * UTC RFC3339 with milliseconds e.g. 2016-11-30T16:25:12.1234Z * UTC RFC3339 without milliseconds e.g. 2016-11-30T16:25:12Z * UTC RFC3339 shortened - without milliseconds and punctuation e.g. 20161130T162512Z Date-time filtering supports three operators: * equality * greater than or equal to – field name suffixed with ```__gte``` * less than or equal to – field name suffixed with ```__lte``` Lower and upper limits to a date-time range may be specified by including both the ```__gte``` and ```__lte``` forms in the filter. ```{field name}[|__lte|__gte]={UTC RFC3339 date-time}``` ###### On device custom attributes: ```custom_attributes__{param}={value}``` ```custom_attributes__tag=TAG1``` ###### On device component attributes: ```component_attributes__{name}={version}``` ```component_attributes__ble=1.2.3``` ##### Multi-field example ```state=bootstrapped&created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z``` Encoded: ```?filter=state%3Dbootstrapped%26created_at__gte%3D2016-11-30T16%3A25%3A12.1234Z%26created_at__lte%3D2016-11-30T00%3A00%3A00Z``` ##### Filtering with filter operators String field filtering supports the following operators: * equality: `__eq` * non-equality: `__neq` * in : `__in` * not in: `__nin` For `__in` and `__nin` filters list of parameters must be comma-separated: `state__nin=unenrolled,dergistered` | [optional]
**include** | **String**| Comma-separated list of data fields to return. Currently supported: `total_count`. | [optional]
**lifecycleStatusEq** | **String**| eq filter for the \"lifecycle_status\" field | [optional]
**lifecycleStatusNeq** | **String**| neq filter for the \"lifecycle_status\" field | [optional]
@@ -420,6 +426,10 @@ Name | Type | Description | Notes
**nameNeq** | **String**| neq filter for the \"name\" field | [optional]
**nameIn** | **String**| in filter for the \"name\" field | [optional]
**nameNin** | **String**| nin filter for the \"name\" field | [optional]
+ **netIdEq** | **String**| eq filter for the \"net_id\" field | [optional]
+ **netIdNeq** | **String**| neq filter for the \"net_id\" field | [optional]
+ **netIdIn** | **String**| in filter for the \"net_id\" field | [optional]
+ **netIdNin** | **String**| nin filter for the \"net_id\" field | [optional]
**serialNumberEq** | **String**| eq filter for the \"serial_number\" field | [optional]
**serialNumberNeq** | **String**| neq filter for the \"serial_number\" field | [optional]
**serialNumberIn** | **String**| in filter for the \"serial_number\" field | [optional]
@@ -456,7 +466,7 @@ Name | Type | Description | Notes
Get a device.
-Retrieve information about a specific device. **Example:** Following example must be updated with the device's ID to the URL. The id is from of \"01667c6e992c00000000000100100370\" ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/devices/<device_ID> \\ -H 'Authorization: Bearer <API key>' ```
+Retrieve information about a specific device. This API returns [DeviceData](https://developer.pelion.com/docs/device-management-api/device-directory/). If you want to see the structure of resources in the device or the actual resource values, use the [Connect API](https://developer.pelion.com/docs/device-management-api/connect/). **Example:** Following example must be updated with the device's ID to the URL. The id is from of \"01667c6e992c00000000000100100370\" ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/devices/<device_ID> \\ -H 'Authorization: Bearer <API key>' ```
### Example
```java
@@ -476,7 +486,7 @@ Bearer.setApiKey("YOUR API KEY");
//Bearer.setApiKeyPrefix("Token");
DeviceDirectoryDevicesApi apiInstance = new DeviceDirectoryDevicesApi();
-String id = "id_example"; // String | The ID of the device.
+String id = "id_example"; // String | The [Device ID](https://developer.pelion.com/docs/device-management/current/connecting/device-identity.html) created by Device Management.
try {
DeviceData result = apiInstance.deviceRetrieve(id);
System.out.println(result);
@@ -490,7 +500,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **id** | **String**| The ID of the device. |
+ **id** | **String**| The [Device ID](https://developer.pelion.com/docs/device-management/current/connecting/device-identity.html) created by Device Management. |
### Return type
@@ -531,7 +541,7 @@ Bearer.setApiKey("YOUR API KEY");
//Bearer.setApiKeyPrefix("Token");
DeviceDirectoryDevicesApi apiInstance = new DeviceDirectoryDevicesApi();
-String id = "id_example"; // String | The ID of the device.
+String id = "id_example"; // String | The [Device ID](https://developer.pelion.com/docs/device-management/current/connecting/device-identity.html) created by Device Management.
DeviceDataPutRequest device = new DeviceDataPutRequest(); // DeviceDataPutRequest |
try {
DeviceData result = apiInstance.deviceUpdate(id, device);
@@ -546,7 +556,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **id** | **String**| The ID of the device. |
+ **id** | **String**| The [Device ID](https://developer.pelion.com/docs/device-management/current/connecting/device-identity.html) created by Device Management. |
**device** | [**DeviceDataPutRequest**](DeviceDataPutRequest.md)| |
### Return type
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryEventsApi.md b/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryEventsApi.md
index 7058c7b8d..b9fd232f4 100644
--- a/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryEventsApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryEventsApi.md
@@ -16,7 +16,7 @@ Method | HTTP request | Description
List all device events.
-List all device events for an account. **Example:** Following example gets device-events limiting returned results to max 5 events ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/device-events?limit=5 \\ -H 'Authorization: Bearer <API key>' ``` or to get events for certain device filter based on device_id: ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/device-events?device_id=<device_id> \\ -H 'Authorization: Bearer <API key>' ```
+List all or a filtered list of device events for the account. Device events are events significant to operation or lifetime, such as creation, firmware update, and suspension. To see statistics for device connectivity and usage, use the [Statistics API](https://developer.pelion.com/docs/device-management-api/connect-statistics/). **Example:** Following example gets device-events limiting returned results to max 5 events ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/device-events?limit=5 \\ -H 'Authorization: Bearer <API key>' ``` or to get events for certain device filter based on device_id: ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/device-events?device_id=<device_id> \\ -H 'Authorization: Bearer <API key>' ```
### Example
```java
@@ -40,7 +40,7 @@ Integer limit = 56; // Integer | How many objects to retrieve in the page (2-100
String order = "order_example"; // String | Record order. Acceptable values: ASC, DESC. Default: ASC.
String after = "after_example"; // String | The ID of the item after which to retrieve the next page.
String include = "include_example"; // String | Comma-separated list of data fields to return. Currently supported: `total_count`.
-String filter = "filter_example"; // String | URL-encoded query string parameter to filter returned data. ##### Filtering `?filter={URL encoded query string}` The query string is made up of key/value pairs separated by ampersands. So for a query of `key1=value1&key2=value2&key3=value3`, this would be encoded as `?filter=key1%3Dvalue1%26key2%3Dvalue2%26key3%3Dvalue3`. ###### Filterable fields: The below table lists all filterable fields: | Field | = / __eq / __neq | __in / __nin | __lte / __gte |
| date_time | ✓ | ✓ | ✓ |
| description | ✓ | ✓ | |
| id | ✓ | ✓ | |
| device_id | ✓ | ✓ | |
| event_type | ✓ | ✓ | |
| state_change | ✓ | ✓ | |
The examples below show the queries in *unencoded* form. ###### By id: `id={id}` ###### By state change: `state_change=[True|False]` ###### By event type: `event_type={value}` ###### On date-time fields: Date-time fields should be specified in UTC RFC3339 format: `YYYY-MM-DDThh:mm:ss.msZ`. There are three permitted variations: * UTC RFC3339 with milliseconds, for example, 2016-11-30T16:25:12.1234Z. * UTC RFC3339 without milliseconds, for example, 2016-11-30T16:25:12Z. * UTC RFC3339 shortened - without milliseconds and punctuation, for example, 20161130T162512Z. Date-time filtering supports three operators: * Equality. * Greater than or equal to – field name suffixed with `__gte`. * Less than or equal to – field name suffixed with `__lte`. Lower and upper limits to a date-time range may be specified by including both the `__gte` and `__lte` forms in the filter: `{field name}[|__lte|__gte]={UTC RFC3339 date-time}` ##### Multi-field example `id=0158d38771f70000000000010010038c&state_change=True&date_time__gte=2016-11-30T16:25:12.1234Z` Encoded: `?filter=id%3D0158d38771f70000000000010010038c%26state_change%3DTrue%26date_time__gte%3D2016-11-30T16%3A25%3A12.1234Z` ##### Filtering with filter operators String field filtering supports the following operators: * Equality: `__eq`. * Non-equality: `__neq`. * In : `__in`. * Not in: `__nin`. For `__in` and `__nin` filters list of parameters must be comma-separated: `event_type__in=update.device.device-created,update.device.device-updated`
+String filter = "filter_example"; // String | URL-encoded query string parameter to filter returned data. ##### Filtering `?filter={URL encoded query string}` The query string is made up of key/value pairs separated by ampersands. So for a query of `key1=value1&key2=value2&key3=value3`, this is encoded as `?filter=key1%3Dvalue1%26key2%3Dvalue2%26key3%3Dvalue3`. ###### Filterable fields: The below table lists all filterable fields: | Field | = / __eq / __neq | __in / __nin | __lte / __gte |
| date_time | ✓ | ✓ | ✓ |
| description | ✓ | ✓ | |
| id | ✓ | ✓ | |
| device_id | ✓ | ✓ | |
| event_type | ✓ | ✓ | |
| state_change | ✓ | ✓ | |
The examples below show the queries in *unencoded* form. ###### By id: `id={id}` ###### By state change: `state_change=[True|False]` ###### By event type: `event_type={value}` ###### On date-time fields: Date-time fields should be specified in UTC RFC3339 format: `YYYY-MM-DDThh:mm:ss.msZ`. There are three permitted variations: * UTC RFC3339 with milliseconds, for example, 2016-11-30T16:25:12.1234Z. * UTC RFC3339 without milliseconds, for example, 2016-11-30T16:25:12Z. * UTC RFC3339 shortened - without milliseconds and punctuation, for example, 20161130T162512Z. Date-time filtering supports three operators: * Equality. * Greater than or equal to – field name suffixed with `__gte`. * Less than or equal to – field name suffixed with `__lte`. Lower and upper limits to a date-time range may be specified by including both the `__gte` and `__lte` forms in the filter: `{field name}[|__lte|__gte]={UTC RFC3339 date-time}` ##### Multi-field example `id=0158d38771f70000000000010010038c&state_change=True&date_time__gte=2016-11-30T16:25:12.1234Z` Encoded: `?filter=id%3D0158d38771f70000000000010010038c%26state_change%3DTrue%26date_time__gte%3D2016-11-30T16%3A25%3A12.1234Z` ##### Filtering with filter operators String field filtering supports the following operators: * Equality: `__eq`. * Non-equality: `__neq`. * In : `__in`. * Not in: `__nin`. For `__in` and `__nin` filters list of parameters must be comma-separated: `event_type__in=update.device.device-created,update.device.device-updated`
String dateTimeIn = "dateTimeIn_example"; // String | in filter for the \"date_time\" field
String dateTimeNin = "dateTimeNin_example"; // String | nin filter for the \"date_time\" field
DateTime dateTimeLte = new DateTime(); // DateTime | lte filter for the \"date_time\" field
@@ -80,7 +80,7 @@ Name | Type | Description | Notes
**order** | **String**| Record order. Acceptable values: ASC, DESC. Default: ASC. | [optional]
**after** | **String**| The ID of the item after which to retrieve the next page. | [optional]
**include** | **String**| Comma-separated list of data fields to return. Currently supported: `total_count`. | [optional]
- **filter** | **String**| URL-encoded query string parameter to filter returned data. ##### Filtering `?filter={URL encoded query string}` The query string is made up of key/value pairs separated by ampersands. So for a query of `key1=value1&key2=value2&key3=value3`, this would be encoded as `?filter=key1%3Dvalue1%26key2%3Dvalue2%26key3%3Dvalue3`. ###### Filterable fields: The below table lists all filterable fields: <table> <thead> <tr> <th>Field</th> <th>= / __eq / __neq</th> <th>__in / __nin</th> <th>__lte / __gte</th> <tr> <thead> <tbody> <tr> <td>date_time</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> <tr> <td>description</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>id</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>device_id</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>event_type</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>state_change</td> <td>✓</td> <td>✓</td> <td> </td> </tr> </tbody> </table> The examples below show the queries in *unencoded* form. ###### By id: `id={id}` ###### By state change: `state_change=[True|False]` ###### By event type: `event_type={value}` ###### On date-time fields: Date-time fields should be specified in UTC RFC3339 format: `YYYY-MM-DDThh:mm:ss.msZ`. There are three permitted variations: * UTC RFC3339 with milliseconds, for example, 2016-11-30T16:25:12.1234Z. * UTC RFC3339 without milliseconds, for example, 2016-11-30T16:25:12Z. * UTC RFC3339 shortened - without milliseconds and punctuation, for example, 20161130T162512Z. Date-time filtering supports three operators: * Equality. * Greater than or equal to – field name suffixed with `__gte`. * Less than or equal to – field name suffixed with `__lte`. Lower and upper limits to a date-time range may be specified by including both the `__gte` and `__lte` forms in the filter: `{field name}[|__lte|__gte]={UTC RFC3339 date-time}` ##### Multi-field example `id=0158d38771f70000000000010010038c&state_change=True&date_time__gte=2016-11-30T16:25:12.1234Z` Encoded: `?filter=id%3D0158d38771f70000000000010010038c%26state_change%3DTrue%26date_time__gte%3D2016-11-30T16%3A25%3A12.1234Z` ##### Filtering with filter operators String field filtering supports the following operators: * Equality: `__eq`. * Non-equality: `__neq`. * In : `__in`. * Not in: `__nin`. For `__in` and `__nin` filters list of parameters must be comma-separated: `event_type__in=update.device.device-created,update.device.device-updated` | [optional]
+ **filter** | **String**| URL-encoded query string parameter to filter returned data. ##### Filtering `?filter={URL encoded query string}` The query string is made up of key/value pairs separated by ampersands. So for a query of `key1=value1&key2=value2&key3=value3`, this is encoded as `?filter=key1%3Dvalue1%26key2%3Dvalue2%26key3%3Dvalue3`. ###### Filterable fields: The below table lists all filterable fields: <table> <thead> <tr> <th>Field</th> <th>= / __eq / __neq</th> <th>__in / __nin</th> <th>__lte / __gte</th> <tr> <thead> <tbody> <tr> <td>date_time</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> <tr> <td>description</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>id</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>device_id</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>event_type</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>state_change</td> <td>✓</td> <td>✓</td> <td> </td> </tr> </tbody> </table> The examples below show the queries in *unencoded* form. ###### By id: `id={id}` ###### By state change: `state_change=[True|False]` ###### By event type: `event_type={value}` ###### On date-time fields: Date-time fields should be specified in UTC RFC3339 format: `YYYY-MM-DDThh:mm:ss.msZ`. There are three permitted variations: * UTC RFC3339 with milliseconds, for example, 2016-11-30T16:25:12.1234Z. * UTC RFC3339 without milliseconds, for example, 2016-11-30T16:25:12Z. * UTC RFC3339 shortened - without milliseconds and punctuation, for example, 20161130T162512Z. Date-time filtering supports three operators: * Equality. * Greater than or equal to – field name suffixed with `__gte`. * Less than or equal to – field name suffixed with `__lte`. Lower and upper limits to a date-time range may be specified by including both the `__gte` and `__lte` forms in the filter: `{field name}[|__lte|__gte]={UTC RFC3339 date-time}` ##### Multi-field example `id=0158d38771f70000000000010010038c&state_change=True&date_time__gte=2016-11-30T16:25:12.1234Z` Encoded: `?filter=id%3D0158d38771f70000000000010010038c%26state_change%3DTrue%26date_time__gte%3D2016-11-30T16%3A25%3A12.1234Z` ##### Filtering with filter operators String field filtering supports the following operators: * Equality: `__eq`. * Non-equality: `__neq`. * In : `__in`. * Not in: `__nin`. For `__in` and `__nin` filters list of parameters must be comma-separated: `event_type__in=update.device.device-created,update.device.device-updated` | [optional]
**dateTimeIn** | **String**| in filter for the \"date_time\" field | [optional]
**dateTimeNin** | **String**| nin filter for the \"date_time\" field | [optional]
**dateTimeLte** | **DateTime**| lte filter for the \"date_time\" field | [optional]
@@ -123,7 +123,7 @@ Name | Type | Description | Notes
Retrieve a device event.
-Retrieve a specific device event. **Example:** To fetch a specific event you can use the 'id' field form the '/v3/device-events'. Form of '016c03d40a4e000000000001001003b4' ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/device-events/<device_event_id> \\ -H 'Authorization: Bearer <API key>' ```
+\"Retrieve a specific device event. See '/v3/device-events/' for information on device events, and how to get the device_event_id.\" **Example:** To fetch a specific event you can use the 'id' field from '/v3/device-events'. Form of '016c03d40a4e000000000001001003b4' ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/device-events/<device_event_id> \\ -H 'Authorization: Bearer <API key>' ```
### Example
```java
@@ -178,7 +178,7 @@ Name | Type | Description | Notes
DEPRECATED: List all device events.
-DEPRECATED: List all device events. Use `/v3/device-events/` instead.
+DEPRECATED: This API is replaced with `/v3/device-events/`.
### Example
```java
@@ -289,7 +289,7 @@ Name | Type | Description | Notes
DEPRECATED: Retrieve a device event.
-Retrieve device event (deprecated, use /v3/device-events/{device_event_id}/ instead).
+DEPRECATED: This API is replaced by `/v3/device-events/` and `/v3/device-events/{device_event_id}/`.
### Example
```java
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryGroupsApi.md b/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryGroupsApi.md
index 2b601c0b1..5df5ebb7d 100644
--- a/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryGroupsApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryGroupsApi.md
@@ -75,7 +75,7 @@ Name | Type | Description | Notes
Delete a group.
-Delete a group.
+Delete a group. This deletes the group, but not the devices in the group.
### Example
```java
@@ -154,7 +154,7 @@ Integer limit = 56; // Integer | How many objects to retrieve in the page (2-100
String order = "order_example"; // String | Record order. Acceptable values: ASC, DESC. Default: ASC.
String after = "after_example"; // String | The ID of the item after which to retrieve the next page.
String include = "include_example"; // String | Comma-separated list of data fields to return. Currently supported: `total_count`.
-String filter = "filter_example"; // String | URL-encoded query string parameter to filter returned data. ##### Filtering `?filter={URL encoded query string}` The query string is made up of key/value pairs separated by ampersands. So for a query of `key1=value1&key2=value2&key3=value3`, this would be encoded as `?filter=key1%3Dvalue1%26key2%3Dvalue2%26key3%3Dvalue3`. ###### Filterable fields: The table lists all filterable fields: | Field | = / __eq / __neq | __in / __nin | __lte / __gte |
| id | ✓ | ✓ | |
| devices_count | ✓ | ✓ | ✓ |
| name | ✓ | ✓ | |
| custom_attributes | ✓ | | |
| created_at | ✓ | ✓ | ✓ |
| updated_at | ✓ | ✓ | ✓ |
| etag | ✓ | ✓ | ✓ |
The examples below show the queries in *unencoded* form. ###### By device group properties: `name__eq=mygroup` ###### On date-time fields: Date-time fields should be specified in UTC RFC3339 format `YYYY-MM-DDThh:mm:ss.msZ`. There are three permitted variations: * UTC RFC3339 with milliseconds, for example, 2016-11-30T16:25:12.1234Z. * UTC RFC3339 without milliseconds, for example, 2016-11-30T16:25:12Z. * UTC RFC3339 shortened - without milliseconds and punctuation, for example, 20161130T162512Z. Date-time filtering supports three operators: * Equality. * Greater than or equal to – field name suffixed with `__gte`. * Less than or equal to – field name suffixed with `__lte`. Lower and upper limits to a date-time range may be specified by including both the `__gte` and `__lte` forms in the filter: `{field name}[|__lte|__gte]={UTC RFC3339 date-time}` ###### By device group custom attributes: `custom_attributes__{param}={value}` `custom_attributes__tag=TAG1` ##### Multi-field example `name__eq=mygroup&created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z` Encoded: `?filter=name__eq%3Dmygroup%26created_at__gte%3D2016-11-30T16%3A25%3A12.1234Z%26created_at__lte%3D2016-12-30T00%3A00%3A00Z` ##### Filtering with filter operators String field filtering supports the following operators: * Equality: `__eq`. * Non-equality: `__neq`. * In : `__in`. * Not in: `__nin`. For `__in` and `__nin` filters list of parameters must be comma-separated: `name__in=group1,group2`
+String filter = "filter_example"; // String | URL-encoded query string parameter to filter returned data. ##### Filtering `?filter={URL encoded query string}` The query string is made up of key/value pairs separated by ampersands. So for a query of `key1=value1&key2=value2&key3=value3`, this would be encoded as `?filter=key1%3Dvalue1%26key2%3Dvalue2%26key3%3Dvalue3`. ###### Filterable fields: The table lists all filterable fields: | Field | = / __eq / __neq | __in / __nin | __lte / __gte |
| id | ✓ | ✓ | |
| devices_count | ✓ | ✓ | ✓ |
| name | ✓ | ✓ | |
| custom_attributes | ✓ | | |
| component_attributes | ✓ | | |
| created_at | ✓ | ✓ | ✓ |
| updated_at | ✓ | ✓ | ✓ |
| etag | ✓ | ✓ | ✓ |
The examples below show the queries in *unencoded* form. ###### By device group properties: `name__eq=mygroup` ###### On date-time fields: Date-time fields should be specified in UTC RFC3339 format `YYYY-MM-DDThh:mm:ss.msZ`. There are three permitted variations: * UTC RFC3339 with milliseconds, for example, 2016-11-30T16:25:12.1234Z. * UTC RFC3339 without milliseconds, for example, 2016-11-30T16:25:12Z. * UTC RFC3339 shortened - without milliseconds and punctuation, for example, 20161130T162512Z. Date-time filtering supports three operators: * Equality. * Greater than or equal to – field name suffixed with `__gte`. * Less than or equal to – field name suffixed with `__lte`. Lower and upper limits to a date-time range may be specified by including both the `__gte` and `__lte` forms in the filter: `{field name}[|__lte|__gte]={UTC RFC3339 date-time}` ###### By device group custom attributes: `custom_attributes__{param}={value}` `custom_attributes__tag=TAG1` ###### By device group component attributes: `component_attributes__{name}={version}` `component_attributes__{name}__{operator}={version}` `component_attributes__ble=1.2.3` `component_attributes__main__gt=1.2.3` ##### Multi-field example `name__eq=mygroup&created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z` Encoded: `?filter=name__eq%3Dmygroup%26created_at__gte%3D2016-11-30T16%3A25%3A12.1234Z%26created_at__lte%3D2016-12-30T00%3A00%3A00Z` ##### Filtering with filter operators String field filtering supports the following operators: * Equality: `__eq`. * Non-equality: `__neq`. * In : `__in`. * Not in: `__nin`. For `__in` and `__nin` filters list of parameters must be comma-separated: `name__in=group1,group2`
String idEq = "idEq_example"; // String | eq filter for the \"id\" field
String idNeq = "idNeq_example"; // String | neq filter for the \"id\" field
String idIn = "idIn_example"; // String | in filter for the \"id\" field
@@ -194,7 +194,7 @@ Name | Type | Description | Notes
**order** | **String**| Record order. Acceptable values: ASC, DESC. Default: ASC. | [optional]
**after** | **String**| The ID of the item after which to retrieve the next page. | [optional]
**include** | **String**| Comma-separated list of data fields to return. Currently supported: `total_count`. | [optional]
- **filter** | **String**| URL-encoded query string parameter to filter returned data. ##### Filtering `?filter={URL encoded query string}` The query string is made up of key/value pairs separated by ampersands. So for a query of `key1=value1&key2=value2&key3=value3`, this would be encoded as `?filter=key1%3Dvalue1%26key2%3Dvalue2%26key3%3Dvalue3`. ###### Filterable fields: The table lists all filterable fields: <table> <thead> <tr> <th>Field</th> <th>= / __eq / __neq</th> <th>__in / __nin</th> <th>__lte / __gte</th> <tr> <thead> <tbody> <tr> <td>id</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>devices_count</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> <tr> <td>name</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>custom_attributes</td> <td>✓</td> <td> </td> <td> </td> </tr> <tr> <td>created_at</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> <tr> <td>updated_at</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> <tr> <td>etag</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> </tbody> </table> The examples below show the queries in *unencoded* form. ###### By device group properties: `name__eq=mygroup` ###### On date-time fields: Date-time fields should be specified in UTC RFC3339 format `YYYY-MM-DDThh:mm:ss.msZ`. There are three permitted variations: * UTC RFC3339 with milliseconds, for example, 2016-11-30T16:25:12.1234Z. * UTC RFC3339 without milliseconds, for example, 2016-11-30T16:25:12Z. * UTC RFC3339 shortened - without milliseconds and punctuation, for example, 20161130T162512Z. Date-time filtering supports three operators: * Equality. * Greater than or equal to – field name suffixed with `__gte`. * Less than or equal to – field name suffixed with `__lte`. Lower and upper limits to a date-time range may be specified by including both the `__gte` and `__lte` forms in the filter: `{field name}[|__lte|__gte]={UTC RFC3339 date-time}` ###### By device group custom attributes: `custom_attributes__{param}={value}` `custom_attributes__tag=TAG1` ##### Multi-field example `name__eq=mygroup&created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z` Encoded: `?filter=name__eq%3Dmygroup%26created_at__gte%3D2016-11-30T16%3A25%3A12.1234Z%26created_at__lte%3D2016-12-30T00%3A00%3A00Z` ##### Filtering with filter operators String field filtering supports the following operators: * Equality: `__eq`. * Non-equality: `__neq`. * In : `__in`. * Not in: `__nin`. For `__in` and `__nin` filters list of parameters must be comma-separated: `name__in=group1,group2` | [optional]
+ **filter** | **String**| URL-encoded query string parameter to filter returned data. ##### Filtering `?filter={URL encoded query string}` The query string is made up of key/value pairs separated by ampersands. So for a query of `key1=value1&key2=value2&key3=value3`, this would be encoded as `?filter=key1%3Dvalue1%26key2%3Dvalue2%26key3%3Dvalue3`. ###### Filterable fields: The table lists all filterable fields: <table> <thead> <tr> <th>Field</th> <th>= / __eq / __neq</th> <th>__in / __nin</th> <th>__lte / __gte</th> <tr> <thead> <tbody> <tr> <td>id</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>devices_count</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> <tr> <td>name</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>custom_attributes</td> <td>✓</td> <td> </td> <td> </td> </tr> <tr> <td>component_attributes</td> <td>✓</td> <td> </td> <td> </td> </tr> <tr> <td>created_at</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> <tr> <td>updated_at</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> <tr> <td>etag</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> </tbody> </table> The examples below show the queries in *unencoded* form. ###### By device group properties: `name__eq=mygroup` ###### On date-time fields: Date-time fields should be specified in UTC RFC3339 format `YYYY-MM-DDThh:mm:ss.msZ`. There are three permitted variations: * UTC RFC3339 with milliseconds, for example, 2016-11-30T16:25:12.1234Z. * UTC RFC3339 without milliseconds, for example, 2016-11-30T16:25:12Z. * UTC RFC3339 shortened - without milliseconds and punctuation, for example, 20161130T162512Z. Date-time filtering supports three operators: * Equality. * Greater than or equal to – field name suffixed with `__gte`. * Less than or equal to – field name suffixed with `__lte`. Lower and upper limits to a date-time range may be specified by including both the `__gte` and `__lte` forms in the filter: `{field name}[|__lte|__gte]={UTC RFC3339 date-time}` ###### By device group custom attributes: `custom_attributes__{param}={value}` `custom_attributes__tag=TAG1` ###### By device group component attributes: `component_attributes__{name}={version}` `component_attributes__{name}__{operator}={version}` `component_attributes__ble=1.2.3` `component_attributes__main__gt=1.2.3` ##### Multi-field example `name__eq=mygroup&created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z` Encoded: `?filter=name__eq%3Dmygroup%26created_at__gte%3D2016-11-30T16%3A25%3A12.1234Z%26created_at__lte%3D2016-12-30T00%3A00%3A00Z` ##### Filtering with filter operators String field filtering supports the following operators: * Equality: `__eq`. * Non-equality: `__neq`. * In : `__in`. * Not in: `__nin`. For `__in` and `__nin` filters list of parameters must be comma-separated: `name__in=group1,group2` | [optional]
**idEq** | **String**| eq filter for the \"id\" field | [optional]
**idNeq** | **String**| neq filter for the \"id\" field | [optional]
**idIn** | **String**| in filter for the \"id\" field | [optional]
@@ -237,7 +237,7 @@ Name | Type | Description | Notes
Add a device to a group.
-Add one device to a group.
+Add one device to a group. A device can be in multiple groups.
### Example
```java
@@ -347,11 +347,11 @@ Name | Type | Description | Notes
# **groupMembersRetrieve**
-> DevicePage groupMembersRetrieve(deviceGroupId, limit, order, after, include, lifecycleStatusEq, lifecycleStatusNeq, lifecycleStatusIn, lifecycleStatusNin, operatorSuspendedEq, operatorSuspendedNeq, lastOperatorSuspendedCategoryEq, lastOperatorSuspendedCategoryNeq, lastOperatorSuspendedCategoryIn, lastOperatorSuspendedCategoryNin, lastOperatorSuspendedUpdatedAtIn, lastOperatorSuspendedUpdatedAtNin, lastOperatorSuspendedUpdatedAtLte, lastOperatorSuspendedUpdatedAtGte, systemSuspendedEq, systemSuspendedNeq, lastSystemSuspendedCategoryEq, lastSystemSuspendedCategoryNeq, lastSystemSuspendedCategoryIn, lastSystemSuspendedCategoryNin, lastSystemSuspendedUpdatedAtIn, lastSystemSuspendedUpdatedAtNin, lastSystemSuspendedUpdatedAtLte, lastSystemSuspendedUpdatedAtGte, accountIdEq, accountIdNeq, accountIdIn, accountIdNin, autoUpdateEq, autoUpdateNeq, bootstrapExpirationDateIn, bootstrapExpirationDateNin, bootstrapExpirationDateLte, bootstrapExpirationDateGte, bootstrappedTimestampIn, bootstrappedTimestampNin, bootstrappedTimestampLte, bootstrappedTimestampGte, caIdEq, caIdNeq, caIdIn, caIdNin, connectorExpirationDateIn, connectorExpirationDateNin, connectorExpirationDateLte, connectorExpirationDateGte, createdAtIn, createdAtNin, createdAtLte, createdAtGte, deployedStateEq, deployedStateNeq, deployedStateIn, deployedStateNin, deploymentEq, deploymentNeq, deploymentIn, deploymentNin, descriptionEq, descriptionNeq, descriptionIn, descriptionNin, deviceClassEq, deviceClassNeq, deviceClassIn, deviceClassNin, deviceExecutionModeEq, deviceExecutionModeNeq, deviceExecutionModeIn, deviceExecutionModeNin, deviceKeyEq, deviceKeyNeq, deviceKeyIn, deviceKeyNin, endpointNameEq, endpointNameNeq, endpointNameIn, endpointNameNin, endpointTypeEq, endpointTypeNeq, endpointTypeIn, endpointTypeNin, enrolmentListTimestampIn, enrolmentListTimestampNin, enrolmentListTimestampLte, enrolmentListTimestampGte, firmwareChecksumEq, firmwareChecksumNeq, firmwareChecksumIn, firmwareChecksumNin, hostGatewayEq, hostGatewayNeq, hostGatewayIn, hostGatewayNin, idEq, idNeq, idIn, idNin, manifestEq, manifestNeq, manifestIn, manifestNin, manifestTimestampIn, manifestTimestampNin, manifestTimestampLte, manifestTimestampGte, mechanismEq, mechanismNeq, mechanismIn, mechanismNin, mechanismUrlEq, mechanismUrlNeq, mechanismUrlIn, mechanismUrlNin, nameEq, nameNeq, nameIn, nameNin, serialNumberEq, serialNumberNeq, serialNumberIn, serialNumberNin, stateEq, stateNeq, stateIn, stateNin, updatedAtIn, updatedAtNin, updatedAtLte, updatedAtGte, vendorIdEq, vendorIdNeq, vendorIdIn, vendorIdNin)
+> DevicePage groupMembersRetrieve(deviceGroupId, limit, order, after, include, lifecycleStatusEq, lifecycleStatusNeq, lifecycleStatusIn, lifecycleStatusNin, operatorSuspendedEq, operatorSuspendedNeq, lastOperatorSuspendedCategoryEq, lastOperatorSuspendedCategoryNeq, lastOperatorSuspendedCategoryIn, lastOperatorSuspendedCategoryNin, lastOperatorSuspendedUpdatedAtIn, lastOperatorSuspendedUpdatedAtNin, lastOperatorSuspendedUpdatedAtLte, lastOperatorSuspendedUpdatedAtGte, systemSuspendedEq, systemSuspendedNeq, lastSystemSuspendedCategoryEq, lastSystemSuspendedCategoryNeq, lastSystemSuspendedCategoryIn, lastSystemSuspendedCategoryNin, lastSystemSuspendedUpdatedAtIn, lastSystemSuspendedUpdatedAtNin, lastSystemSuspendedUpdatedAtLte, lastSystemSuspendedUpdatedAtGte, accountIdEq, accountIdNeq, accountIdIn, accountIdNin, autoUpdateEq, autoUpdateNeq, bootstrapExpirationDateIn, bootstrapExpirationDateNin, bootstrapExpirationDateLte, bootstrapExpirationDateGte, bootstrappedTimestampIn, bootstrappedTimestampNin, bootstrappedTimestampLte, bootstrappedTimestampGte, caIdEq, caIdNeq, caIdIn, caIdNin, connectorExpirationDateIn, connectorExpirationDateNin, connectorExpirationDateLte, connectorExpirationDateGte, createdAtIn, createdAtNin, createdAtLte, createdAtGte, deployedStateEq, deployedStateNeq, deployedStateIn, deployedStateNin, deploymentEq, deploymentNeq, deploymentIn, deploymentNin, descriptionEq, descriptionNeq, descriptionIn, descriptionNin, deviceClassEq, deviceClassNeq, deviceClassIn, deviceClassNin, deviceExecutionModeEq, deviceExecutionModeNeq, deviceExecutionModeIn, deviceExecutionModeNin, deviceKeyEq, deviceKeyNeq, deviceKeyIn, deviceKeyNin, endpointNameEq, endpointNameNeq, endpointNameIn, endpointNameNin, endpointTypeEq, endpointTypeNeq, endpointTypeIn, endpointTypeNin, enrolmentListTimestampIn, enrolmentListTimestampNin, enrolmentListTimestampLte, enrolmentListTimestampGte, firmwareChecksumEq, firmwareChecksumNeq, firmwareChecksumIn, firmwareChecksumNin, hostGatewayEq, hostGatewayNeq, hostGatewayIn, hostGatewayNin, idEq, idNeq, idIn, idNin, manifestEq, manifestNeq, manifestIn, manifestNin, manifestTimestampIn, manifestTimestampNin, manifestTimestampLte, manifestTimestampGte, mechanismEq, mechanismNeq, mechanismIn, mechanismNin, mechanismUrlEq, mechanismUrlNeq, mechanismUrlIn, mechanismUrlNin, nameEq, nameNeq, nameIn, nameNin, netIdEq, netIdNeq, netIdIn, netIdNin, serialNumberEq, serialNumberNeq, serialNumberIn, serialNumberNin, stateEq, stateNeq, stateIn, stateNin, updatedAtIn, updatedAtNin, updatedAtLte, updatedAtGte, vendorIdEq, vendorIdNeq, vendorIdIn, vendorIdNin)
Get a page of devices.
-Get a page of devices.
+Get a page of devices in a specified group.
### Example
```java
@@ -494,6 +494,10 @@ String nameEq = "nameEq_example"; // String | eq filter for the \"name\" field
String nameNeq = "nameNeq_example"; // String | neq filter for the \"name\" field
String nameIn = "nameIn_example"; // String | in filter for the \"name\" field
String nameNin = "nameNin_example"; // String | nin filter for the \"name\" field
+String netIdEq = "netIdEq_example"; // String | eq filter for the \"net_id\" field
+String netIdNeq = "netIdNeq_example"; // String | neq filter for the \"net_id\" field
+String netIdIn = "netIdIn_example"; // String | in filter for the \"net_id\" field
+String netIdNin = "netIdNin_example"; // String | nin filter for the \"net_id\" field
String serialNumberEq = "serialNumberEq_example"; // String | eq filter for the \"serial_number\" field
String serialNumberNeq = "serialNumberNeq_example"; // String | neq filter for the \"serial_number\" field
String serialNumberIn = "serialNumberIn_example"; // String | in filter for the \"serial_number\" field
@@ -511,7 +515,7 @@ String vendorIdNeq = "vendorIdNeq_example"; // String | neq filter for the \"ven
String vendorIdIn = "vendorIdIn_example"; // String | in filter for the \"vendor_id\" field
String vendorIdNin = "vendorIdNin_example"; // String | nin filter for the \"vendor_id\" field
try {
- DevicePage result = apiInstance.groupMembersRetrieve(deviceGroupId, limit, order, after, include, lifecycleStatusEq, lifecycleStatusNeq, lifecycleStatusIn, lifecycleStatusNin, operatorSuspendedEq, operatorSuspendedNeq, lastOperatorSuspendedCategoryEq, lastOperatorSuspendedCategoryNeq, lastOperatorSuspendedCategoryIn, lastOperatorSuspendedCategoryNin, lastOperatorSuspendedUpdatedAtIn, lastOperatorSuspendedUpdatedAtNin, lastOperatorSuspendedUpdatedAtLte, lastOperatorSuspendedUpdatedAtGte, systemSuspendedEq, systemSuspendedNeq, lastSystemSuspendedCategoryEq, lastSystemSuspendedCategoryNeq, lastSystemSuspendedCategoryIn, lastSystemSuspendedCategoryNin, lastSystemSuspendedUpdatedAtIn, lastSystemSuspendedUpdatedAtNin, lastSystemSuspendedUpdatedAtLte, lastSystemSuspendedUpdatedAtGte, accountIdEq, accountIdNeq, accountIdIn, accountIdNin, autoUpdateEq, autoUpdateNeq, bootstrapExpirationDateIn, bootstrapExpirationDateNin, bootstrapExpirationDateLte, bootstrapExpirationDateGte, bootstrappedTimestampIn, bootstrappedTimestampNin, bootstrappedTimestampLte, bootstrappedTimestampGte, caIdEq, caIdNeq, caIdIn, caIdNin, connectorExpirationDateIn, connectorExpirationDateNin, connectorExpirationDateLte, connectorExpirationDateGte, createdAtIn, createdAtNin, createdAtLte, createdAtGte, deployedStateEq, deployedStateNeq, deployedStateIn, deployedStateNin, deploymentEq, deploymentNeq, deploymentIn, deploymentNin, descriptionEq, descriptionNeq, descriptionIn, descriptionNin, deviceClassEq, deviceClassNeq, deviceClassIn, deviceClassNin, deviceExecutionModeEq, deviceExecutionModeNeq, deviceExecutionModeIn, deviceExecutionModeNin, deviceKeyEq, deviceKeyNeq, deviceKeyIn, deviceKeyNin, endpointNameEq, endpointNameNeq, endpointNameIn, endpointNameNin, endpointTypeEq, endpointTypeNeq, endpointTypeIn, endpointTypeNin, enrolmentListTimestampIn, enrolmentListTimestampNin, enrolmentListTimestampLte, enrolmentListTimestampGte, firmwareChecksumEq, firmwareChecksumNeq, firmwareChecksumIn, firmwareChecksumNin, hostGatewayEq, hostGatewayNeq, hostGatewayIn, hostGatewayNin, idEq, idNeq, idIn, idNin, manifestEq, manifestNeq, manifestIn, manifestNin, manifestTimestampIn, manifestTimestampNin, manifestTimestampLte, manifestTimestampGte, mechanismEq, mechanismNeq, mechanismIn, mechanismNin, mechanismUrlEq, mechanismUrlNeq, mechanismUrlIn, mechanismUrlNin, nameEq, nameNeq, nameIn, nameNin, serialNumberEq, serialNumberNeq, serialNumberIn, serialNumberNin, stateEq, stateNeq, stateIn, stateNin, updatedAtIn, updatedAtNin, updatedAtLte, updatedAtGte, vendorIdEq, vendorIdNeq, vendorIdIn, vendorIdNin);
+ DevicePage result = apiInstance.groupMembersRetrieve(deviceGroupId, limit, order, after, include, lifecycleStatusEq, lifecycleStatusNeq, lifecycleStatusIn, lifecycleStatusNin, operatorSuspendedEq, operatorSuspendedNeq, lastOperatorSuspendedCategoryEq, lastOperatorSuspendedCategoryNeq, lastOperatorSuspendedCategoryIn, lastOperatorSuspendedCategoryNin, lastOperatorSuspendedUpdatedAtIn, lastOperatorSuspendedUpdatedAtNin, lastOperatorSuspendedUpdatedAtLte, lastOperatorSuspendedUpdatedAtGte, systemSuspendedEq, systemSuspendedNeq, lastSystemSuspendedCategoryEq, lastSystemSuspendedCategoryNeq, lastSystemSuspendedCategoryIn, lastSystemSuspendedCategoryNin, lastSystemSuspendedUpdatedAtIn, lastSystemSuspendedUpdatedAtNin, lastSystemSuspendedUpdatedAtLte, lastSystemSuspendedUpdatedAtGte, accountIdEq, accountIdNeq, accountIdIn, accountIdNin, autoUpdateEq, autoUpdateNeq, bootstrapExpirationDateIn, bootstrapExpirationDateNin, bootstrapExpirationDateLte, bootstrapExpirationDateGte, bootstrappedTimestampIn, bootstrappedTimestampNin, bootstrappedTimestampLte, bootstrappedTimestampGte, caIdEq, caIdNeq, caIdIn, caIdNin, connectorExpirationDateIn, connectorExpirationDateNin, connectorExpirationDateLte, connectorExpirationDateGte, createdAtIn, createdAtNin, createdAtLte, createdAtGte, deployedStateEq, deployedStateNeq, deployedStateIn, deployedStateNin, deploymentEq, deploymentNeq, deploymentIn, deploymentNin, descriptionEq, descriptionNeq, descriptionIn, descriptionNin, deviceClassEq, deviceClassNeq, deviceClassIn, deviceClassNin, deviceExecutionModeEq, deviceExecutionModeNeq, deviceExecutionModeIn, deviceExecutionModeNin, deviceKeyEq, deviceKeyNeq, deviceKeyIn, deviceKeyNin, endpointNameEq, endpointNameNeq, endpointNameIn, endpointNameNin, endpointTypeEq, endpointTypeNeq, endpointTypeIn, endpointTypeNin, enrolmentListTimestampIn, enrolmentListTimestampNin, enrolmentListTimestampLte, enrolmentListTimestampGte, firmwareChecksumEq, firmwareChecksumNeq, firmwareChecksumIn, firmwareChecksumNin, hostGatewayEq, hostGatewayNeq, hostGatewayIn, hostGatewayNin, idEq, idNeq, idIn, idNin, manifestEq, manifestNeq, manifestIn, manifestNin, manifestTimestampIn, manifestTimestampNin, manifestTimestampLte, manifestTimestampGte, mechanismEq, mechanismNeq, mechanismIn, mechanismNin, mechanismUrlEq, mechanismUrlNeq, mechanismUrlIn, mechanismUrlNin, nameEq, nameNeq, nameIn, nameNin, netIdEq, netIdNeq, netIdIn, netIdNin, serialNumberEq, serialNumberNeq, serialNumberIn, serialNumberNin, stateEq, stateNeq, stateIn, stateNin, updatedAtIn, updatedAtNin, updatedAtLte, updatedAtGte, vendorIdEq, vendorIdNeq, vendorIdIn, vendorIdNin);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling DeviceDirectoryGroupsApi#groupMembersRetrieve");
@@ -646,6 +650,10 @@ Name | Type | Description | Notes
**nameNeq** | **String**| neq filter for the \"name\" field | [optional]
**nameIn** | **String**| in filter for the \"name\" field | [optional]
**nameNin** | **String**| nin filter for the \"name\" field | [optional]
+ **netIdEq** | **String**| eq filter for the \"net_id\" field | [optional]
+ **netIdNeq** | **String**| neq filter for the \"net_id\" field | [optional]
+ **netIdIn** | **String**| in filter for the \"net_id\" field | [optional]
+ **netIdNin** | **String**| nin filter for the \"net_id\" field | [optional]
**serialNumberEq** | **String**| eq filter for the \"serial_number\" field | [optional]
**serialNumberNeq** | **String**| neq filter for the \"serial_number\" field | [optional]
**serialNumberIn** | **String**| in filter for the \"serial_number\" field | [optional]
@@ -682,7 +690,7 @@ Name | Type | Description | Notes
Get a group.
-Get a group.
+Returns [DeviceGroup](https://developer.pelion.com/docs/device-management-api/device-directory/) info what contains info of the group, for example, name and updated date. To list the devices in the group, use '/v3/device-groups/{device-group-id}/devices/'.
### Example
```java
@@ -737,7 +745,7 @@ Name | Type | Description | Notes
Modify the attributes of a group.
-Modify the attributes of a group.
+Modify the attributes of a group, such as the description.
### Example
```java
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryLifecycleApi.md b/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryLifecycleApi.md
index 39b2706ad..3028aff4d 100644
--- a/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryLifecycleApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceDirectoryLifecycleApi.md
@@ -16,7 +16,7 @@ Method | HTTP request | Description
List all device block categories
-List all device block categories. A block category is a short description of why a device was suspended or returned to service. **Example:** Get all defined categories of why device is blocked from the device management ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/device-block-categories \\ -H 'Authorization: Bearer <API key>' ```
+List all device block categories. A block category is a short description of why a device was suspended or returned to service. **Example:** Get all defined device suspension categories: ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/device-block-categories \\ -H 'Authorization: Bearer <API key>' ```
### Example
```java
@@ -36,9 +36,9 @@ Bearer.setApiKey("YOUR API KEY");
//Bearer.setApiKeyPrefix("Token");
DeviceDirectoryLifecycleApi apiInstance = new DeviceDirectoryLifecycleApi();
-Integer limit = 56; // Integer | This endpoint doesn't support paging. Parameter is accepted for API compatibility. Value is ignored
+Integer limit = 56; // Integer | This endpoint doesn't support paging. Parameter is accepted for API compatibility. Value is ignored.
String order = "order_example"; // String | Record order. Acceptable values: ASC, DESC. Default: ASC.
-String after = "after_example"; // String | This endpoint doesn't support paging. Parameter is accepted for API compatibility. Value is ignored
+String after = "after_example"; // String | This endpoint doesn't support paging. Parameter is accepted for API compatibility. Value is ignored.
String include = "include_example"; // String | Comma-separated list of data fields to return. Currently supported: `total_count`.
String referenceEq = "referenceEq_example"; // String | eq filter for the \"reference\" field
String referenceNeq = "referenceNeq_example"; // String | neq filter for the \"reference\" field
@@ -61,9 +61,9 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **limit** | **Integer**| This endpoint doesn't support paging. Parameter is accepted for API compatibility. Value is ignored | [optional]
+ **limit** | **Integer**| This endpoint doesn't support paging. Parameter is accepted for API compatibility. Value is ignored. | [optional]
**order** | **String**| Record order. Acceptable values: ASC, DESC. Default: ASC. | [optional]
- **after** | **String**| This endpoint doesn't support paging. Parameter is accepted for API compatibility. Value is ignored | [optional]
+ **after** | **String**| This endpoint doesn't support paging. Parameter is accepted for API compatibility. Value is ignored. | [optional]
**include** | **String**| Comma-separated list of data fields to return. Currently supported: `total_count`. | [optional]
**referenceEq** | **String**| eq filter for the \"reference\" field | [optional]
**referenceNeq** | **String**| neq filter for the \"reference\" field | [optional]
@@ -148,7 +148,7 @@ Name | Type | Description | Notes
Return a device to service.
-Returning a device to service restores connectivity to the device. All API functionality is restored. **Example:** Following example enables device to connect again to Pelion Device Management. Note that the category must match the reason why device was suspended. This device was reported stolen but was now found. ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/devices/<device_id>/resume \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{ \"category\": \"lost_or_stolen\", \"description\": \"Was found, was not stolen but miss placed\"}' ```
+[Returning a device to service](https://developer.pelion.com/docs/device-management/current/device-management/managing-devices-in-your-account.html#using-the-api-suspending-and-resuming-devices) allows the device to connect to Device Management again. The connection is established according to the device's reconnection logic. The device reports a [registration event](https://developer.pelion.com/docs/device-management-api/connect/) through a [notification channel](https://developer.pelion.com/docs/device-management/current/integrate-web-app/event-notification.html). The default reconnection logic is a progressive back-off for 2, 4, 8, or 16 seconds, up to one week. All API functionality is restored. **Example:** The following example enables a device to reconnect to Pelion Device Management. The category must match the reason device was suspended. This device was reported stolen, but was found: ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/devices/<device_id>/resume \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"category\": \"lost_or_stolen\", \"description\": \"Was found, was not stolen but miss placed\"}' ```
### Example
```java
@@ -205,7 +205,7 @@ Name | Type | Description | Notes
Suspend a device.
-Suspending a device prevents it from connecting to Device Management. If a device is currently connected, it will be disconnected. Some API operations will fail while a device is suspended. ***Example:* Following example suspends a device with category \"Lost or stolen\". You can see available categories with '/v3/device-block-categories/'. ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/devices/<device_id>/suspend \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{ \"category\": \"lost_or_stolen\", \"description\": \"EXAMPLE: Customer contacted via phone and reported device being stolen. Specific time of the theft was not know. Device last used in May/2019\"}' ```
+[Suspending a device](https://developer.pelion.com/docs/device-management/current/device-management/managing-devices-in-your-account.html#suspending-and-resuming-devices) prevents it from connecting to Device Management. If a device is currently connected, it disconnects and shows as deregistered. You can also receive [deregistration events](https://developer.pelion.com/docs/device-management-api/connect/) in [notification channels](https://developer.pelion.com/docs/device-management/current/integrate-web-app/event-notification.html). API operations needing device transactions fail while a device is suspended. Example use case to use suspending is that device is reported lost or stolen. You can block the device to connect and this way prevent device to cause unreliable data to your system. ***Example:* The following example suspends a device with category \"Lost or stolen\". You can see available categories with '/v3/device-block-categories/'. ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/devices/<device_id>/suspend \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"category\": \"lost_or_stolen\", \"description\": \"EXAMPLE: Customer contacted via phone and reported device being stolen. Specific time of the theft was not know. Device last used in May/2019\"}' ```
### Example
```java
@@ -225,7 +225,7 @@ Bearer.setApiKey("YOUR API KEY");
//Bearer.setApiKeyPrefix("Token");
DeviceDirectoryLifecycleApi apiInstance = new DeviceDirectoryLifecycleApi();
-String id = "id_example"; // String | The ID of the device.
+String id = "id_example"; // String | The [Device ID](https://developer.pelion.com/docs/device-management/current/connecting/device-identity.html) created by Device Management.
Block1 block = new Block1(); // Block1 | The device block.
try {
Void result = apiInstance.deviceSuspend(id, block);
@@ -240,7 +240,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **id** | **String**| The ID of the device. |
+ **id** | **String**| The [Device ID](https://developer.pelion.com/docs/device-management/current/connecting/device-identity.html) created by Device Management. |
**block** | [**Block1**](Block1.md)| The device block. |
### Return type
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceEchoApi.md b/backends/pelioncloud_devicemanagement/docs/DeviceEchoApi.md
new file mode 100644
index 000000000..d6afef2bc
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceEchoApi.md
@@ -0,0 +1,120 @@
+# DeviceEchoApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**deleteDeviceEchoObject**](DeviceEchoApi.md#deleteDeviceEchoObject) | **DELETE** v3/devices/{device-id}/echo | Delete the Device Echo object.
+[**getDeviceEchoObject**](DeviceEchoApi.md#getDeviceEchoObject) | **GET** v3/devices/{device-id}/echo | Get the Device Echo object.
+
+
+
+# **deleteDeviceEchoObject**
+> Void deleteDeviceEchoObject(deviceId)
+
+Delete the Device Echo object.
+
+Calling this API removes your application data and device from the Device Echo service. You can still find the device using 'GET /v3/devices/{id}' from the Device Directory API. For privacy reasons, you might need to delete device data that contains personal information about the device owner or user. Private information is stored by the application; Pelion Device Management Client does not provide or store any private data. **Note:** If the device is able to connect, its data will reappear in Echo the next time the device sends that information to the service. To ensure data is permanently removed, suspend the device first by calling 'POST /v3/devices/{id}/suspend'. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/devices/{device-id}/echo -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceEchoApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceEchoApi apiInstance = new DeviceEchoApi();
+String deviceId = "deviceId_example"; // String | The device ID generated by Device Management.
+try {
+ Void result = apiInstance.deleteDeviceEchoObject(deviceId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceEchoApi#deleteDeviceEchoObject");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **deviceId** | **String**| The device ID generated by Device Management. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getDeviceEchoObject**
+> EchoDevice getDeviceEchoObject(deviceId)
+
+Get the Device Echo object.
+
+Retrieve the Device Echo object, which represents the last known state of the device. The state includes the resources and their reported values with the desired state of the device. Auto-observable and subscribed resources are stored as the reported state of the device. To change the desired state, issue write commands with `/v2/device-requests/{device-id}`. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/devices/{device-id}/echo -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceEchoApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceEchoApi apiInstance = new DeviceEchoApi();
+String deviceId = "deviceId_example"; // String | The device ID generated by Device Management.
+try {
+ EchoDevice result = apiInstance.getDeviceEchoObject(deviceId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceEchoApi#getDeviceEchoObject");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **deviceId** | **String**| The device ID generated by Device Management. |
+
+### Return type
+
+[**EchoDevice**](EchoDevice.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceEqNeqFilter.md b/backends/pelioncloud_devicemanagement/docs/DeviceEqNeqFilter.md
index 503bde9fe..a7f08a725 100644
--- a/backends/pelioncloud_devicemanagement/docs/DeviceEqNeqFilter.md
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceEqNeqFilter.md
@@ -6,10 +6,11 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**accountId** | **String** | | [optional]
**autoUpdate** | **Boolean** | | [optional]
-**bootstrapExpirationDate** | [**DateTime**](DateTime.md) | | [optional]
+**bootstrapExpirationDate** | [**LocalDate**](LocalDate.md) | | [optional]
**bootstrappedTimestamp** | [**DateTime**](DateTime.md) | | [optional]
**caId** | **String** | | [optional]
-**connectorExpirationDate** | [**DateTime**](DateTime.md) | | [optional]
+**componentAttributes** | **Map<String, String>** | | [optional]
+**connectorExpirationDate** | [**LocalDate**](LocalDate.md) | | [optional]
**createdAt** | [**DateTime**](DateTime.md) | | [optional]
**customAttributes** | **Map<String, String>** | | [optional]
**deployedState** | **String** | | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceEventData.md b/backends/pelioncloud_devicemanagement/docs/DeviceEventData.md
index 986435079..ccd32c855 100644
--- a/backends/pelioncloud_devicemanagement/docs/DeviceEventData.md
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceEventData.md
@@ -12,7 +12,7 @@ Name | Type | Description | Notes
**deviceId** | **String** | | [optional]
**etag** | [**DateTime**](DateTime.md) | | [optional]
**eventType** | **String** | Event code | [optional]
-**eventTypeCategory** | **String** | Category code which groups the event type by a summary category. | [optional]
+**eventTypeCategory** | **String** | Category code that groups the event type by a summary category. | [optional]
**eventTypeDescription** | **String** | Generic description of the event. | [optional]
**id** | **String** | |
**object** | **String** | The API resource entity. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceGroup.md b/backends/pelioncloud_devicemanagement/docs/DeviceGroup.md
index a7dedeb19..e11543e0a 100644
--- a/backends/pelioncloud_devicemanagement/docs/DeviceGroup.md
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceGroup.md
@@ -4,7 +4,7 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**createdAt** | [**DateTime**](DateTime.md) | The time the campaign was created. | [optional]
+**createdAt** | [**DateTime**](DateTime.md) | The time the group was created. | [optional]
**customAttributes** | **Map<String, String>** | Up to ten custom key-value attributes. Keys cannot begin with a number. Both key and value are limited to 128 characters. Updating this field replaces existing contents. | [optional]
**description** | **String** | The description of the group. | [optional]
**devicesCount** | **Integer** | The number of devices in this group. | [optional]
@@ -12,7 +12,7 @@ Name | Type | Description | Notes
**id** | **String** | The group ID. | [optional]
**name** | **String** | Name of the group. | [optional]
**object** | **String** | Entity name: always `device-group`. | [optional]
-**updatedAt** | [**DateTime**](DateTime.md) | The time the object was updated. | [optional]
+**updatedAt** | [**DateTime**](DateTime.md) | The time this object was updated. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceGteLteFilter.md b/backends/pelioncloud_devicemanagement/docs/DeviceGteLteFilter.md
index c0a587791..5cc5dbcc0 100644
--- a/backends/pelioncloud_devicemanagement/docs/DeviceGteLteFilter.md
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceGteLteFilter.md
@@ -4,9 +4,9 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**bootstrapExpirationDate** | [**DateTime**](DateTime.md) | | [optional]
+**bootstrapExpirationDate** | [**LocalDate**](LocalDate.md) | | [optional]
**bootstrappedTimestamp** | [**DateTime**](DateTime.md) | | [optional]
-**connectorExpirationDate** | [**DateTime**](DateTime.md) | | [optional]
+**connectorExpirationDate** | [**LocalDate**](LocalDate.md) | | [optional]
**createdAt** | [**DateTime**](DateTime.md) | | [optional]
**enrolmentListTimestamp** | [**DateTime**](DateTime.md) | | [optional]
**etag** | [**DateTime**](DateTime.md) | | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceInNinFilter.md b/backends/pelioncloud_devicemanagement/docs/DeviceInNinFilter.md
index 26d78237b..7afc533a6 100644
--- a/backends/pelioncloud_devicemanagement/docs/DeviceInNinFilter.md
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceInNinFilter.md
@@ -6,10 +6,11 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**accountId** | **String** | | [optional]
**autoUpdate** | **Boolean** | | [optional]
-**bootstrapExpirationDate** | [**DateTime**](DateTime.md) | | [optional]
+**bootstrapExpirationDate** | [**LocalDate**](LocalDate.md) | | [optional]
**bootstrappedTimestamp** | [**DateTime**](DateTime.md) | | [optional]
**caId** | **String** | | [optional]
-**connectorExpirationDate** | [**DateTime**](DateTime.md) | | [optional]
+**componentAttributes** | **Map<String, String>** | | [optional]
+**connectorExpirationDate** | [**LocalDate**](LocalDate.md) | | [optional]
**createdAt** | [**DateTime**](DateTime.md) | | [optional]
**customAttributes** | **Map<String, String>** | | [optional]
**deployedState** | **String** | | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceOwnershipEnrollmentsApi.md b/backends/pelioncloud_devicemanagement/docs/DeviceOwnershipEnrollmentsApi.md
new file mode 100644
index 000000000..a14c82227
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceOwnershipEnrollmentsApi.md
@@ -0,0 +1,462 @@
+# DeviceOwnershipEnrollmentsApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**createBulkDeviceEnrollment**](DeviceOwnershipEnrollmentsApi.md#createBulkDeviceEnrollment) | **POST** v3/device-enrollments-bulk-uploads | Bulk upload.
+[**createDeviceEnrollment**](DeviceOwnershipEnrollmentsApi.md#createDeviceEnrollment) | **POST** v3/device-enrollments | Create a single enrollment.
+[**deleteBulkDeviceEnrollment**](DeviceOwnershipEnrollmentsApi.md#deleteBulkDeviceEnrollment) | **POST** v3/device-enrollments-bulk-deletes | Bulk delete.
+[**deleteDeviceEnrollment**](DeviceOwnershipEnrollmentsApi.md#deleteDeviceEnrollment) | **DELETE** v3/device-enrollments/{id} | Delete an enrollment by ID.
+[**getBulkDeviceEnrollment**](DeviceOwnershipEnrollmentsApi.md#getBulkDeviceEnrollment) | **GET** v3/device-enrollments-bulk-uploads/{id} | Get bulk upload entity.
+[**getBulkDeviceEnrollmentDelete**](DeviceOwnershipEnrollmentsApi.md#getBulkDeviceEnrollmentDelete) | **GET** v3/device-enrollments-bulk-deletes/{id} | Get bulk delete entity.
+[**getDeviceEnrollment**](DeviceOwnershipEnrollmentsApi.md#getDeviceEnrollment) | **GET** v3/device-enrollments/{id} | Get details of an single enrollment by ID.
+[**getDeviceEnrollments**](DeviceOwnershipEnrollmentsApi.md#getDeviceEnrollments) | **GET** v3/device-enrollments | Get a list of enrollments per account.
+
+
+
+# **createBulkDeviceEnrollment**
+> BulkResponse createBulkDeviceEnrollment(enrollmentIdentities)
+
+Bulk upload.
+
+With bulk upload, you can upload a `CSV` file containing a number of enrollment IDs. **Example:** ``` curl -X POST \\ -H 'Authorization: Bearer <access_key>' \\ -F 'enrollment_identities=@/path/to/enrollments/enrollments.csv' \\ https://api.us-east-1.mbedcloud.com/v3/device-enrollments-bulk-uploads ``` **To ensure your CSV file is valid:** 1. The first line of the file (header) is ignored. 1. Each line can contain comma-separated values, where the first value is the Enrollment ID. Everything after the first comma is ignored. 1. Valid enrollments begin with A followed by a - and 95 characters (examples below). 1. One enrollment ID per line. Empty lines are ignored. 1. Trailing comma at the end of the line is optional. 1. Lines are terminated with either a line feed \\n, a carriage return \\r, or both \\r\\n. 1. Leading and trailing whitespace characters (Unicode U+0000 - U+0020) are removed from the identity before validation. 1. Empty identities are ignored. 1. Valid enrollment identities may be enclosed within quotation marks. Whitespace inside quotation marks is not trimmed and will cause validation to fail. Empty quotation marks are also invalid. 1. Use UTF-8 encoding. **A valid enrollment file:** ``` \"Examples of valid identites, notes\" \"A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:44:71:93:23:22:15:43:23:12\", \"A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:48:44:71:22:15:43:23:12\" A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:48:44:71:22:15:43:23:12 A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:24:44:71:22:15:43:23:12, This text is ignored. A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:60:25:48:44:71:22:15:43:23:12 , Whitespace is trimmed before validation. \"A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:60:25:48:44:71:22:15:43:23:12\" , Whitespace around quotation marks is also trimmed. ``` **A file containing invalid identities:** ``` \"A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:44:71:93:23:22:15:43:23:12\", First line is ignored. A_4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:48:44:71:22:15:43:23:12, Invalid version identifier. A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:48:44:71:22:15:43:23:12, Too-short identity. \"\", Empty quotation marks are an invalid identity \" A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:44:71:93:23:22:15:43:23:12 \", Whitespace inside quotation marks is not trimmed, causing an error. ``` **An empty file:** ``` \"Examples of blank lines that are ignored\" ,, , This is also considered a blank line. ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceOwnershipEnrollmentsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceOwnershipEnrollmentsApi apiInstance = new DeviceOwnershipEnrollmentsApi();
+File enrollmentIdentities = new File("/path/to/file.txt"); // File | The `CSV` file containing the enrollment IDs. The maximum file size is 10 MB.
+try {
+ BulkResponse result = apiInstance.createBulkDeviceEnrollment(enrollmentIdentities);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceOwnershipEnrollmentsApi#createBulkDeviceEnrollment");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **enrollmentIdentities** | **File**| The `CSV` file containing the enrollment IDs. The maximum file size is 10 MB. |
+
+### Return type
+
+[**BulkResponse**](BulkResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: multipart/form-data
+ - **Accept**: application/json
+
+
+# **createDeviceEnrollment**
+> EnrollmentIdentity createDeviceEnrollment(enrollmentIdentity)
+
+Create a single enrollment.
+
+When the device connects to the bootstrap server and provides the enrollment ID, it is assigned to your account. <br> **Example:** ``` curl -X POST \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ https://api.us-east-1.mbedcloud.com/v3/device-enrollments \\ -d '{\"enrollment_identity\": \"A-35:e7:72:8a:07:50:3b:3d:75:96:57:52:72:41:0d:78:cc:c6:e5:53:48:c6:65:58:5b:fa:af:4d:2d:73:95:c5\"}' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceOwnershipEnrollmentsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceOwnershipEnrollmentsApi apiInstance = new DeviceOwnershipEnrollmentsApi();
+EnrollmentId enrollmentIdentity = new EnrollmentId(); // EnrollmentId |
+try {
+ EnrollmentIdentity result = apiInstance.createDeviceEnrollment(enrollmentIdentity);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceOwnershipEnrollmentsApi#createDeviceEnrollment");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **enrollmentIdentity** | [**EnrollmentId**](EnrollmentId.md)| |
+
+### Return type
+
+[**EnrollmentIdentity**](EnrollmentIdentity.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **deleteBulkDeviceEnrollment**
+> BulkResponse deleteBulkDeviceEnrollment(enrollmentIdentities)
+
+Bulk delete.
+
+With bulk delete, you can upload a `CSV` file containing a number of enrollment IDs to delete. **Example:** ``` curl -X POST \\ -H 'Authorization: Bearer <access_key>' \\ -F 'enrollment_identities=@/path/to/enrollments/enrollments.csv' \\ https://api.us-east-1.mbedcloud.com/v3/device-enrollments-bulk-deletes ``` **To ensure your CSV file is valid:** 1. The first line of the file (header) is ignored. 1. Each line can contain comma-separated values, where the first value is the Enrollment ID. Everything after the first comma is ignored. 1. Valid enrollments begin with A followed by a - and 95 characters (examples below). 1. One enrollment ID per line. Empty lines are ignored. 1. Trailing comma at the end of the line is optional. 1. Lines are terminated with either a line feed \\n, a carriage return \\r, or both \\r\\n. 1. Leading and trailing whitespace characters (Unicode U+0000 - U+0020) are removed from the identity before validation. 1. Empty identities are ignored. 1. Valid enrollment identities may be enclosed within quotation marks. Whitespace inside quotation marks is not trimmed and will cause validation to fail. Empty quotation marks are also invalid. 1. Use UTF-8 encoding. **A valid enrollment file:** ``` \"Examples of valid identites, notes\" \"A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:44:71:93:23:22:15:43:23:12\", \"A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:48:44:71:22:15:43:23:12\" A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:48:44:71:22:15:43:23:12 A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:24:44:71:22:15:43:23:12, This text is ignored, A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:60:25:48:44:71:22:15:43:23:12 , Whitespace is trimmed before validation. \"A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:60:25:48:44:71:22:15:43:23:12\" , Whitespace around quotation marks is also trimmed. ``` **A file containing invalid identities:** ``` \"A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:44:71:93:23:22:15:43:23:12\", First line is ignored. A_4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:48:44:71:22:15:43:23:12, Invalid version identifier. A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:48:44:71:22:15:43:23, Too-short identity. \"\", Empty quotation marks are an invalid identity. \" A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:44:71:93:23:22:15:43:23:12 \", Whitespace inside quotation marks is not trimmed, causing an error. ``` **An empty file:** ``` \"Examples of blank lines that are ignored.\" ,, , This is also considered to a blank line. ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceOwnershipEnrollmentsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceOwnershipEnrollmentsApi apiInstance = new DeviceOwnershipEnrollmentsApi();
+File enrollmentIdentities = new File("/path/to/file.txt"); // File | The `CSV` file containing the enrollment IDs. The maximum file size is 10MB.
+try {
+ BulkResponse result = apiInstance.deleteBulkDeviceEnrollment(enrollmentIdentities);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceOwnershipEnrollmentsApi#deleteBulkDeviceEnrollment");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **enrollmentIdentities** | **File**| The `CSV` file containing the enrollment IDs. The maximum file size is 10MB. |
+
+### Return type
+
+[**BulkResponse**](BulkResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: multipart/form-data
+ - **Accept**: application/json
+
+
+# **deleteDeviceEnrollment**
+> Void deleteDeviceEnrollment(id)
+
+Delete an enrollment by ID.
+
+To free a device from your account, delete the enrollment claim. To bypass the device ownership, you need to delete the enrollment and factory reset the device. For more information, see [Transferring ownership using First-to-Claim](https://developer.pelion.com/docs/device-management/current/connecting/device-ownership-first-to-claim-by-enrollment-list.html). <br> **Example:** ``` curl -X DELETE \\ -H 'Authorization: Bearer <access_key>' \\ https://api.us-east-1.mbedcloud.com/v3/device-enrollments/{id} ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceOwnershipEnrollmentsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceOwnershipEnrollmentsApi apiInstance = new DeviceOwnershipEnrollmentsApi();
+String id = "id_example"; // String | Enrollment identity.
+try {
+ Void result = apiInstance.deleteDeviceEnrollment(id);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceOwnershipEnrollmentsApi#deleteDeviceEnrollment");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| Enrollment identity. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getBulkDeviceEnrollment**
+> BulkResponse getBulkDeviceEnrollment(id)
+
+Get bulk upload entity.
+
+Provides information on bulk upload for the given ID, for example, bulk status and number of processed enrollment identities. Provides links to bulk upload reports as well. **Report file format:** The report files have a header line, and the values are separated by commas. Delimit lines with a line break (CRLF). Make sure the report file is compliant with IETF Informal CSV common format [RFC 4180](https://tools.ietf.org/html/rfc4180). An example of a full report file: ``` \"entity__id\",\"entity__created_at\",\"error__code\",\"error__type\",\"error__message\",\"error__fields\" \"A-F9:AA:AA:AA:DE:31:C7:30:72:55:27:AE:8B:E1:1C:6F:42:7D:06:CF:FB:18:6F:59:48:29:B3:98:4B:76:8F:9E\",\"2018-09-07T12:10:58.428Z\",\"\",\"\",\"\",\"\" \"A-FF:AA:AA:AA:3B:43:EB:D7:C7:30:03:5F:C8:D0:15:91:70:C2:5D:4F:EB:24:E9:3A:BB:D8:3C:FE:20:EA:B1:72\",\"2018-09-07T12:10:58.428Z\",\"\",\"\",\"\",\"\" ``` An example of an error report file: ``` \"entity__id\",\"error__code\",\"error__type\",\"error__message\",\"error__fields\" \"A-F9:AA:AA:AA:DE:31:C7:30:72:55:27:AE:8B:E1:1C:6F:42:7D:06:CF:FB:18:6F:59:48:29:B3:98:4B:76:8F:9E\",\"409\",\"duplicate\",\"Enrollment identity is already claimed in the mbed Cloud.\",\"\" \"A-FF:AA:AA:AA:3B:43:EB:D7:C7:30:03:5F:C8:D0:15:91:70:C2:5D:4F:EB:24:E9:3A:BB:D8:3C:FE:20:EA:B1:72\",\"409\",\"duplicate\",\"Enrollment identity is already claimed in the mbed Cloud.\",\"\" ``` **Example:** ``` curl -X GET \\ -H 'Authorization: Bearer <access_key>' \\ https://api.us-east-1.mbedcloud.com/v3/device-enrollments-bulk-uploads/{id} ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceOwnershipEnrollmentsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceOwnershipEnrollmentsApi apiInstance = new DeviceOwnershipEnrollmentsApi();
+String id = "id_example"; // String | Bulk create task entity ID.
+try {
+ BulkResponse result = apiInstance.getBulkDeviceEnrollment(id);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceOwnershipEnrollmentsApi#getBulkDeviceEnrollment");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| Bulk create task entity ID. |
+
+### Return type
+
+[**BulkResponse**](BulkResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: text/csv, application/json
+
+
+# **getBulkDeviceEnrollmentDelete**
+> BulkResponse getBulkDeviceEnrollmentDelete(id)
+
+Get bulk delete entity.
+
+Provides information on bulk delete for the given ID, for example, bulk status and the number of processed enrollment identities. Provides links to bulk delete reports as well. **Report file format:** The report files have a header line and the value are separated by commas. The lines are delimited by a line break (CRLF). Make sure the report file is compliant with IETF Informal CSV common format [RFC 4180](https://tools.ietf.org/html/rfc4180). An example of a full report file: ``` \"entity__id\",\"entity__deleted_at\",\"error__code\",\"error__type\",\"error__message\",\"error__fields\" \"A-F9:AA:AA:AA:DE:31:C7:30:72:55:27:AE:8B:E1:1C:6F:42:7D:06:CF:FB:18:6F:59:48:29:B3:98:4B:76:8F:9E\",\"2018-09-07T12:10:58.428Z\",\"\",\"\",\"\",\"\" \"A-FF:AA:AA:AA:3B:43:EB:D7:C7:30:03:5F:C8:D0:15:91:70:C2:5D:4F:EB:24:E9:3A:BB:D8:3C:FE:20:EA:B1:72\",\"2018-09-07T12:10:58.428Z\",\"\",\"\",\"\",\"\" ``` An example of an error report file: ``` \"entity__id\",\"error__code\",\"error__type\",\"error__message\",\"error__fields\" \"A-F9:AA:AA:AA:DE:31:C7:30:72:55:27:AE:8B:E1:1C:6F:42:7D:06:CF:FB:18:6F:59:48:29:B3:98:4B:76:8F:9E\",\"409\",\"duplicate\",\"Enrollment identity is already claimed in the mbed Cloud.\",\"\" \"A-FF:AA:AA:AA:3B:43:EB:D7:C7:30:03:5F:C8:D0:15:91:70:C2:5D:4F:EB:24:E9:3A:BB:D8:3C:FE:20:EA:B1:72\",\"409\",\"duplicate\",\"Enrollment identity is already claimed in the mbed Cloud.\",\"\" ``` **Example:** ``` curl -X GET \\ -H 'Authorization: Bearer <access_key>' \\ https://api.us-east-1.mbedcloud.com/v3/device-enrollments-bulk-deletes/{id} ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceOwnershipEnrollmentsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceOwnershipEnrollmentsApi apiInstance = new DeviceOwnershipEnrollmentsApi();
+String id = "id_example"; // String | Bulk delete task entity ID.
+try {
+ BulkResponse result = apiInstance.getBulkDeviceEnrollmentDelete(id);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceOwnershipEnrollmentsApi#getBulkDeviceEnrollmentDelete");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| Bulk delete task entity ID. |
+
+### Return type
+
+[**BulkResponse**](BulkResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: text/csv, application/json
+
+
+# **getDeviceEnrollment**
+> EnrollmentIdentity getDeviceEnrollment(id)
+
+Get details of an single enrollment by ID.
+
+Check detailed enrollment info, for example, date of claim or expiration date. **Example:** ``` curl -X GET \\ -H 'Authorization: Bearer <access_key>' \\ https://api.us-east-1.mbedcloud.com/v3/device-enrollments/{id} ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceOwnershipEnrollmentsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceOwnershipEnrollmentsApi apiInstance = new DeviceOwnershipEnrollmentsApi();
+String id = "id_example"; // String | Enrollment identity.
+try {
+ EnrollmentIdentity result = apiInstance.getDeviceEnrollment(id);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceOwnershipEnrollmentsApi#getDeviceEnrollment");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| Enrollment identity. |
+
+### Return type
+
+[**EnrollmentIdentity**](EnrollmentIdentity.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getDeviceEnrollments**
+> EnrollmentIdentities getDeviceEnrollments(limit, after, order, include)
+
+Get a list of enrollments per account.
+
+Provides a list of pending and claimed enrollments. **Example:** ``` curl -X GET \\ -H 'Authorization: Bearer <access_key>' \\ https://api.us-east-1.mbedcloud.com/v3/device-enrollments ``` With query parameters: ``` curl -X GET \\ -H 'Authorization: Bearer <access_key>' \\ 'https://api.us-east-1.mbedcloud.com/v3/device-enrollments?limit=10' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.DeviceOwnershipEnrollmentsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+DeviceOwnershipEnrollmentsApi apiInstance = new DeviceOwnershipEnrollmentsApi();
+Integer limit = 56; // Integer | Number of results to return (2-1000).
+String after = "after_example"; // String | Entity ID to fetch after.
+String order = "ASC"; // String | ASC or DESC
+String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
+try {
+ EnrollmentIdentities result = apiInstance.getDeviceEnrollments(limit, after, order, include);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling DeviceOwnershipEnrollmentsApi#getDeviceEnrollments");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **limit** | **Integer**| Number of results to return (2-1000). | [optional]
+ **after** | **String**| Entity ID to fetch after. | [optional]
+ **order** | **String**| ASC or DESC | [optional] [default to ASC] [enum: ASC, DESC]
+ **include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
+
+### Return type
+
+[**EnrollmentIdentities**](EnrollmentIdentities.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceQuery.md b/backends/pelioncloud_devicemanagement/docs/DeviceQuery.md
index da97b75a8..5fbe37e4e 100644
--- a/backends/pelioncloud_devicemanagement/docs/DeviceQuery.md
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceQuery.md
@@ -4,7 +4,7 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**createdAt** | [**DateTime**](DateTime.md) | The timestamp of when the device was created in Device Directory. |
+**createdAt** | [**DateTime**](DateTime.md) | The timestamp of when the query was created. |
**etag** | [**DateTime**](DateTime.md) | The entity instance signature. |
**id** | **String** | The ID of the query. |
**name** | **String** | The name of the query. |
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceQueryPostPutRequest.md b/backends/pelioncloud_devicemanagement/docs/DeviceQueryPostPutRequest.md
index 81eebb78b..38f6d6f18 100644
--- a/backends/pelioncloud_devicemanagement/docs/DeviceQueryPostPutRequest.md
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceQueryPostPutRequest.md
@@ -5,7 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**name** | **String** | The name of the query. |
-**query** | **String** | The device query. |
+**query** | **String** | The device query to store. A query is made of key/value pairs separated by ampersands (`&`). The key defines the field name to filter by when applying the query. Refer to the endpoint documentation before applying a filter, as supported fields vary between endpoints. |
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceSecurityDeviceCertificateRenewalsApi.md b/backends/pelioncloud_devicemanagement/docs/DeviceSecurityDeviceCertificateRenewalsApi.md
index 4739ba091..2117d26f3 100644
--- a/backends/pelioncloud_devicemanagement/docs/DeviceSecurityDeviceCertificateRenewalsApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceSecurityDeviceCertificateRenewalsApi.md
@@ -15,7 +15,7 @@ Method | HTTP request | Description
Get a certificate enrollment by ID.
-Get a certificate enrollment by ID. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/certificate-enrollments/01612df56f3b0a580a010fc700000000 \\ -H 'Authorization: Bearer <api_key>' ```
+Get a certificate enrollment by ID. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/certificate-enrollments/01612df56f3b0a580a010fc700000000 \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -70,7 +70,7 @@ Name | Type | Description | Notes
Get certificate enrollments list.
-Get certificate enrollments list, optionally filtered. **Examples:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/certificate-enrollments \\ -H 'Authorization: Bearer <api_key>' ``` ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/certificate-enrollments?device_id__eq=01612df56f3b0a580a010fc700000000 \\ -H 'Authorization: Bearer <api_key>' ```
+Get certificate enrollments list, optionally filtered. **Examples:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/certificate-enrollments \\ -H 'Authorization: Bearer <access_key>' ``` ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/certificate-enrollments?device_id__eq=01612df56f3b0a580a010fc700000000 \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -151,7 +151,7 @@ Name | Type | Description | Notes
Request certificate renewal.
-Request a certificate renewal. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/devices/01612df56f3b0a580a010fc700000000/certificates/customer.dlms/renew \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-length: 0' ```
+Request a certificate renewal. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/devices/01612df56f3b0a580a010fc700000000/certificates/customer.dlms/renew \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-length: 0' ```
### Example
```java
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceToPelionMessagesCounter.md b/backends/pelioncloud_devicemanagement/docs/DeviceToPelionMessagesCounter.md
new file mode 100644
index 000000000..db1557740
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceToPelionMessagesCounter.md
@@ -0,0 +1,17 @@
+
+# DeviceToPelionMessagesCounter
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**bootstrapRequests** | **Integer** | |
+**estRequests** | **Integer** | |
+**observations** | **Integer** | |
+**proxyResponses** | **Integer** | |
+**registrationDeletes** | **Integer** | |
+**registrationUpdates** | **Integer** | |
+**registrations** | **Integer** | |
+**totalCount** | **Long** | The number of all inbound requests from devices to Device Management. |
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceUpdateCampaignsApi.md b/backends/pelioncloud_devicemanagement/docs/DeviceUpdateCampaignsApi.md
index ecd83be86..0cd1e522b 100644
--- a/backends/pelioncloud_devicemanagement/docs/DeviceUpdateCampaignsApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceUpdateCampaignsApi.md
@@ -27,7 +27,7 @@ Method | HTTP request | Description
Archive a campaign.
-Archive a campaign. <br> **Usage example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/archive \\ -H 'Authorization: <valid access token>' ```
+Archive a campaign. <br> **Usage example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/update-campaigns/016e83ddc649000000000001001000b8/archive \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -82,7 +82,7 @@ Name | Type | Description | Notes
Create a campaign
-Create an update campaign. <br> **Usage example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/update-campaigns \\ -H 'Authorization: <valid access token>' \\ -H 'content-type: application/json;charset=UTF-8' \\ -d '{ \"campaign_strategy\": \"one-shot\", \"description\": \"Campaign is for ...\", \"device_filter\": \"id__eq=123400000000000000000000000ae45\", \"name\": \"campaign\", \"root_manifest_id\": \"5678000000000000000000000000bd98\", }' ```
+Create an update campaign. To include a filter for targeted devices, refer to the filter using `<filter_id>` in the message body. <br> **Usage example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/update-campaigns \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json;charset=UTF-8' \\ -d '{ \"campaign_strategy\": \"one-shot\", \"description\": \"Campaign is for ...\", \"device_filter\": \"<filter_id>\", \"name\": \"campaign\", \"root_manifest_id\": \"56780000000000a5b70000000000bd98\" }' ```
### Example
```java
@@ -137,7 +137,7 @@ Name | Type | Description | Notes
Delete a campaign
-Delete an update campaign. <br> **Usage example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012 \\ -H 'Authorization: <valid access token>' ```
+Delete an update campaign. <br> **Usage example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/update-campaigns/1123457f9012ab567890120000789012 \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -192,7 +192,7 @@ Name | Type | Description | Notes
Get a list of events grouped by summary
-Get a list of events grouped by summary. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/statistics/12345678901234567890123456789012/event_types \\ -H 'Authorization: <valid access token>' ```
+Get a list of events grouped by summary. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/statistics/skipped/event_types \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -228,7 +228,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**campaignId** | **String**| The campaign ID. |
- **summaryStatusId** | **String**| The summary status. For example, fail. |
+ **summaryStatusId** | **String**| The summary status. For example, fail. | [enum: fail, success, info, skipped]
### Return type
@@ -249,7 +249,7 @@ Name | Type | Description | Notes
Get an event type for a campaign
-Get the count for a specific event type; for example, succeeded, failed, or skipped. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/statistics/12345678901234567890123456789012/event_types/12345678901234567890123456789012 \\ -H 'Authorization: <valid access token>' ```
+Get the count for a specific event type, for example, succeeded, failed or skipped. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/statistics/success/event_types/sys_112 \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -271,7 +271,7 @@ Bearer.setApiKey("YOUR API KEY");
DeviceUpdateCampaignsApi apiInstance = new DeviceUpdateCampaignsApi();
String campaignId = "campaignId_example"; // String | The campaign ID.
String summaryStatusId = "summaryStatusId_example"; // String | The summary status. For example, fail.
-String eventTypeId = "eventTypeId_example"; // String | The event type parameter. For example, UPD4_FAIL_101.
+String eventTypeId = "eventTypeId_example"; // String | The event type parameter. Event types are grouped into the four values of the summary_status, i.e. fail, success, info and skipped. success: SYS_112, UPD4_OK_M1, UPD1_OK_1, UPD4_OK_100, UPD2_OK_19, UPD2_OK_1, UPD2_OK_18 fail: UPD4_FAIL_508, UPD4_FAIL_217, UPD4_FAIL_305, UPD4_FAIL_405, UPD4_FAIL_511, UPD4_FAIL_220, UPD1_FAIL_6, UPD4_FAIL_302, UPD2_FAIL_11, UPD4_FAIL_219, SYS_103, UPD4_FAIL_407, UPD4_FAIL_224, SYS_111, UPD4_FAIL_210, UPD4_FAIL_306, UPD2_FAIL_14, UPD4_FAIL_221, UPD4_FAIL_315, UPD4_FAIL_403, UPD2_FAIL_12, UPD4_FAIL_207, UPD4_FAIL_215, UPD4_FAIL_504, UPD2_FAIL_3, UPD4_FAIL_103, UPD2_FAIL_16, UPD2_FAIL_6, UPD4_FAIL_101, UPD4_FAIL_202, UPD4_FAIL_313, UPD4_FAIL_209, UPD4_FAIL_301, UPD2_FAIL_4, SYS_123, UPD4_FAIL_314, UPD4_FAIL_205, UPD4_FAIL_212, UPD4_FAIL_311, UPD4_FAIL_304, UPD4_FAIL_223, UPD4_FAIL_226, UPD1_FAIL_2, UPD4_FAIL_203, UPD4_FAIL_507, UPD4_FAIL_402, UPD4_FAIL_204, UPD4_FAIL_510, UPD1_FAIL_7, UPD4_FAIL_218, UPD1_FAIL_8, UPD2_FAIL_5, UPD4_FAIL_201, UPD4_FAIL_213, UPD4_FAIL_400, UPD2_FAIL_17, UPD4_FAIL_310, UPD4_FAIL_206, UPD4_FAIL_102, UPD2_FAIL_7, UPD1_FAIL_9, UPD4_FAIL_22, UPD4_FAIL_502, UPD4_FAIL_211, UPD1_FAIL_4, UPD1_FAIL_3, UPD4_FAIL_409, UPD4_FAIL_408, UPD4_FAIL_200, SYS_104, UPD2_FAIL_10, UPD2_FAIL_15, UPD4_FAIL_216, UPD4_FAIL_214, UPD4_FAIL_308, UPD4_FAIL_401, UPD1_FAIL_5, UPD2_FAIL_13, UPD4_FAIL_208, UPD2_FAIL_2, UPD4_FAIL_312, UPD4_FAIL_509, UPD4_FAIL_303, UPD4_FAIL_512, UPD2_FAIL_9, UPD4_FAIL_316, UPD4_FAIL_506, SYS_101, UPD4_FAIL_309, UPD4_FAIL_307, UPD4_FAIL_404, UPD4_FAIL_503, UPD4_FAIL_225, UPD4_FAIL_300, UPD4_FAIL_500, UPD4_FAIL_505, UPD4_FAIL_406, UPD4_FAIL_222, UPD4_FAIL_501, UPD2_FAIL_8, SYS_124 info: UPD1_STATE_0, UPD2_REPORT_HASH, UPD1_REPORT_HASH, UPD2_STATE_5, UPD2_STATE_0, UPD2_STATE_4, UPD2_STATE_3, SYS_107, SYS_105, SYS_106, UPD1_REPORT_VERSION, UPD1_STATE_2, SYS_116, SYS_108, SYS_100, UPD2_STATE_8, UPD2_STATE_7, SYS_120, UPD2_STATE_1, SYS_113, UPD2_STATE_6, UPD2_REPORT_VERSION, SYS_115, UPD2_STATE_2, SYS_114, UPD1_STATE_3, UPD1_STATE_1, SYS_125 skipped: SYS_121, SYS_118, SYS_122, SYS_110, SYS_117
try {
EventType result = apiInstance.updateCampaignEventTypesRetrieve(campaignId, summaryStatusId, eventTypeId);
System.out.println(result);
@@ -286,8 +286,8 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**campaignId** | **String**| The campaign ID. |
- **summaryStatusId** | **String**| The summary status. For example, fail. |
- **eventTypeId** | **String**| The event type parameter. For example, UPD4_FAIL_101. |
+ **summaryStatusId** | **String**| The summary status. For example, fail. | [enum: fail, success, info, skipped]
+ **eventTypeId** | **String**| The event type parameter. Event types are grouped into the four values of the summary_status, i.e. fail, success, info and skipped. success: SYS_112, UPD4_OK_M1, UPD1_OK_1, UPD4_OK_100, UPD2_OK_19, UPD2_OK_1, UPD2_OK_18 fail: UPD4_FAIL_508, UPD4_FAIL_217, UPD4_FAIL_305, UPD4_FAIL_405, UPD4_FAIL_511, UPD4_FAIL_220, UPD1_FAIL_6, UPD4_FAIL_302, UPD2_FAIL_11, UPD4_FAIL_219, SYS_103, UPD4_FAIL_407, UPD4_FAIL_224, SYS_111, UPD4_FAIL_210, UPD4_FAIL_306, UPD2_FAIL_14, UPD4_FAIL_221, UPD4_FAIL_315, UPD4_FAIL_403, UPD2_FAIL_12, UPD4_FAIL_207, UPD4_FAIL_215, UPD4_FAIL_504, UPD2_FAIL_3, UPD4_FAIL_103, UPD2_FAIL_16, UPD2_FAIL_6, UPD4_FAIL_101, UPD4_FAIL_202, UPD4_FAIL_313, UPD4_FAIL_209, UPD4_FAIL_301, UPD2_FAIL_4, SYS_123, UPD4_FAIL_314, UPD4_FAIL_205, UPD4_FAIL_212, UPD4_FAIL_311, UPD4_FAIL_304, UPD4_FAIL_223, UPD4_FAIL_226, UPD1_FAIL_2, UPD4_FAIL_203, UPD4_FAIL_507, UPD4_FAIL_402, UPD4_FAIL_204, UPD4_FAIL_510, UPD1_FAIL_7, UPD4_FAIL_218, UPD1_FAIL_8, UPD2_FAIL_5, UPD4_FAIL_201, UPD4_FAIL_213, UPD4_FAIL_400, UPD2_FAIL_17, UPD4_FAIL_310, UPD4_FAIL_206, UPD4_FAIL_102, UPD2_FAIL_7, UPD1_FAIL_9, UPD4_FAIL_22, UPD4_FAIL_502, UPD4_FAIL_211, UPD1_FAIL_4, UPD1_FAIL_3, UPD4_FAIL_409, UPD4_FAIL_408, UPD4_FAIL_200, SYS_104, UPD2_FAIL_10, UPD2_FAIL_15, UPD4_FAIL_216, UPD4_FAIL_214, UPD4_FAIL_308, UPD4_FAIL_401, UPD1_FAIL_5, UPD2_FAIL_13, UPD4_FAIL_208, UPD2_FAIL_2, UPD4_FAIL_312, UPD4_FAIL_509, UPD4_FAIL_303, UPD4_FAIL_512, UPD2_FAIL_9, UPD4_FAIL_316, UPD4_FAIL_506, SYS_101, UPD4_FAIL_309, UPD4_FAIL_307, UPD4_FAIL_404, UPD4_FAIL_503, UPD4_FAIL_225, UPD4_FAIL_300, UPD4_FAIL_500, UPD4_FAIL_505, UPD4_FAIL_406, UPD4_FAIL_222, UPD4_FAIL_501, UPD2_FAIL_8, SYS_124 info: UPD1_STATE_0, UPD2_REPORT_HASH, UPD1_REPORT_HASH, UPD2_STATE_5, UPD2_STATE_0, UPD2_STATE_4, UPD2_STATE_3, SYS_107, SYS_105, SYS_106, UPD1_REPORT_VERSION, UPD1_STATE_2, SYS_116, SYS_108, SYS_100, UPD2_STATE_8, UPD2_STATE_7, SYS_120, UPD2_STATE_1, SYS_113, UPD2_STATE_6, UPD2_REPORT_VERSION, SYS_115, UPD2_STATE_2, SYS_114, UPD1_STATE_3, UPD1_STATE_1, SYS_125 skipped: SYS_121, SYS_118, SYS_122, SYS_110, SYS_117 |
### Return type
@@ -308,7 +308,7 @@ Name | Type | Description | Notes
List all campaigns
-Get update campaigns for devices specified by a filter. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/update-campaigns \\ -H 'Authorization: <valid access token>' ```
+Get update campaigns for devices specified by a filter. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/update-campaigns \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -459,7 +459,7 @@ Name | Type | Description | Notes
List all campaign device metadata
-Get metadata for all devices in a campaign. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/campaign-device-metadata \\ -H 'Authorization: <valid access token>' ```
+Get metadata for all devices in a campaign. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/update-campaigns/11234567f9012ab56790120000789012/campaign-device-metadata \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -522,7 +522,7 @@ Name | Type | Description | Notes
Get a campaign device metadata
-Get update campaign metadata for a specific device. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/campaign-device-metadata/12345678901234567890123456789012 \\ -H 'Authorization: <valid access token>' ```
+Get update campaign metadata for a specific device. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/update-campaigns/5d645eaec2315a89900000655cd94fa8/campaign-device-metadata/016e83ddc645000000000001001000f6 \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -579,7 +579,7 @@ Name | Type | Description | Notes
Get campaign metrics
-Get [information](https://www.pelion.com/docs/device-management/current/updating-firmware/campaign-metrics-in-portal.html) for a campaign based on **SUCCESS**, **FAIL**, or **SKIPPED** criteria for each device. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/metrics \\ -H 'Authorization: <valid access token>' ```
+Get [information](https://developer.pelion.com/docs/device-management/current/updating-firmware/campaign-metrics-in-portal.html) for a campaign based on **SUCCESS**, **FAIL**, or **SKIPPED** criteria for each device. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/update-campaigns/1123467f9012ab567890120000789012/metrics \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -634,7 +634,7 @@ Name | Type | Description | Notes
Get a campaign.
-Get an update campaign. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012 \\ -H 'Authorization: <valid access token>' ```
+Get an update campaign. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/update-campaigns/11234567f9012ab56890120000789012 \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -689,7 +689,7 @@ Name | Type | Description | Notes
Start a campaign.
-Start a campaign. <br> **Usage example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/start \\ -H 'Authorization: <valid access token>' ```
+Start a campaign. <br> **Usage example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/update-campaigns/5d645eaec2315a8900002e655cd94fa8/start \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -744,7 +744,7 @@ Name | Type | Description | Notes
Get statistics for a campaign
-Get a list of statistics for a campaign, including the number of devices reporting specific event codes. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/statistics \\ -H 'Authorization: <valid access token>' ```
+Get a list of statistics for a campaign, including the number of devices reporting specific event codes. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/update-campaigns/11234567f9012ab56780120000789012/statistics \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -799,7 +799,7 @@ Name | Type | Description | Notes
Get a status summary
-Get the count of successfully updated, skipped, and failed devices. <br> **Usage example:** ``` curl https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/statistics/12345678901234567890123456789012 \\ -H 'Authorization: <valid access token>' ```
+Get the count of successfully updated, skipped, and failed devices. <br> **Usage example:** ``` curl https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/statistics/fail \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -835,7 +835,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**campaignId** | **String**| The campaign ID. |
- **summaryStatusId** | **String**| The summary status. For example, fail. |
+ **summaryStatusId** | **String**| The summary status. For example, fail. | [enum: fail, success, info, skipped]
### Return type
@@ -856,7 +856,7 @@ Name | Type | Description | Notes
Stop a campaign.
-Stop a campaign. Stopping is a process that requires the campaign go through several [phases](../updating-firmware/running-update-campaigns.html#stopping). <br> **Usage example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/stop \\ -H 'Authorization: <valid access token>' ```
+Stop a campaign. Stopping is a process that requires the campaign go through several [phases](https://developer.pelion.com/docs/device-management/current/updating-firmware/device-management-update-using-the-apis.html). <br> **Usage example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/update-campaigns/016e83ddc645000000000001001000b5/stop \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -911,7 +911,7 @@ Name | Type | Description | Notes
Modify a campaign
-Modify an update campaign. <br> **Usage example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012 \\ -H 'Authorization: <valid access token>' \\ d '{ \"description\": \"Campaign is for ...\", \"device_filter\": \"id__eq=123400000000000000000000000ae45\", \"name\": \"campaign\", \"root_manifest_id\": \"5678000000000000000000000000bd98\", }' ```
+Modify an update campaign. <br> **Usage example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/update-campaigns/1123007f9012ab567890120000789012 \\ -H 'Authorization: Bearer <api_key>' \\ d '{ \"description\": \"Campaign is for ...\", \"device_filter\": \"123400000000000000000000000ae45\", \"name\": \"campaign\", \"root_manifest_id\": \"5678000000000000000000000000bd98\", }' ```
### Example
```java
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceUpdateFirmwareImagesApi.md b/backends/pelioncloud_devicemanagement/docs/DeviceUpdateFirmwareImagesApi.md
index 4f78f1740..c54f22e70 100644
--- a/backends/pelioncloud_devicemanagement/docs/DeviceUpdateFirmwareImagesApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceUpdateFirmwareImagesApi.md
@@ -24,7 +24,7 @@ Method | HTTP request | Description
Create an image
-Create a firmware image. <br> **Usage example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/firmware-images \\ -H 'Authorization: <valid access token>' \\ -H 'Content-Type: multipart/form-data' \\ -F 'datafile=@myimage.bin;type=application/octet-stream' -F 'description=bla bla' \\ -F 'name=My Linux Image' ```
+Create a firmware image. <BR/> **Note:** Only use this API for images smaller than 100 MB. For larger images, [upload in chunks](https://developer.pelion.com/docs/device-management/current/updating-firmware/uploading-a-large-firmware-image.html). <br> **Usage example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/firmware-images \\ -H 'Authorization: Bearer <api_key>' \\ -H 'Content-Type: multipart/form-data' \\ -F 'datafile=@myimage.bin;type=application/octet-stream' -F 'description=bla bla' \\ -F 'name=My Linux Image' ```
### Example
```java
@@ -44,7 +44,7 @@ Bearer.setApiKey("YOUR API KEY");
//Bearer.setApiKeyPrefix("Token");
DeviceUpdateFirmwareImagesApi apiInstance = new DeviceUpdateFirmwareImagesApi();
-File datafile = new File("/path/to/file.txt"); // File | The firmware image file to upload.
+File datafile = new File("/path/to/file.txt"); // File | The firmware image file to upload. File name must not exceed 166 characters.
String description = "description_example"; // String | The description of the firmware image.
String name = "name_example"; // String | The name of the firmware image.
try {
@@ -60,7 +60,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **datafile** | **File**| The firmware image file to upload. |
+ **datafile** | **File**| The firmware image file to upload. File name must not exceed 166 characters. |
**description** | **String**| The description of the firmware image. | [optional]
**name** | **String**| The name of the firmware image. | [optional]
@@ -83,7 +83,7 @@ Name | Type | Description | Notes
Delete an image
-Delete a firmware image. <br> **Usage example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/firmware-images/12345678901234567890123456789012 \\ -H 'Authorization: <valid access token>' ```
+Delete a firmware image. <br> **Usage example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/firmware-images/11234567f9012ab56790120000789012 \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -138,7 +138,7 @@ Name | Type | Description | Notes
List all images
-List all firmware images. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-images \\ -H 'Authorization: <valid access token>' ```
+List all firmware images. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-images \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -162,7 +162,7 @@ Integer limit = 56; // Integer | How many objects to retrieve in the page. The m
String order = "order_example"; // String | ASC or DESC.
String after = "after_example"; // String | The ID of the item after which to retrieve the next page.
String include = "include_example"; // String | A comma-separated list of data fields to return. Currently supported: total_count.
-String filter = "filter_example"; // String | URL-encoded query string parameter to filter returned data `?filter={URL-encoded query string}` ###### Filterable fields: The table lists all the fields that can be filtered on with certain filters: | Field | = / __eq / __neq | __in / __nin | __lte / __gte |
| created_at | ✓ | ✓ | ✓ |
| datafile | ✓ | ✓ | |
| datafile_checksum | ✓ | ✓ | |
| datafile_size | ✓ | ✓ | |
| description | ✓ | ✓ | |
| etag | ✓ | ✓ | ✓ |
| id | ✓ | ✓ | |
| name | ✓ | ✓ | |
| updated_at | ✓ | ✓ | ✓ |
The query string is made up of key-value pairs separated by ampersands. For example, this query: `key1=value1&key2=value2&key3=value3` would be URL-encoded as: `?filter=key1__eq%3Dvalue1%26key2__eq%3Dvalue2%26key3__eq%3Dvalue3` **Filtering by properties** `name__eq=myimage` **Filtering on date-time fields** Date-time fields should be specified in UTC RFC3339 format, `YYYY-MM-DDThh:mm:ss.msZ`. There are three permitted variations: * UTC RFC3339 with milliseconds. Example: `2016-11-30T16:25:12.1234Z` * UTC RFC3339 without milliseconds. Example: `2016-11-30T16:25:12Z` * UTC RFC3339 shortened without milliseconds and punctuation. Example: `20161130T162512Z` Date-time filtering supports three operators: * equality by appending `__eq` to the field name * greater than or equal to by appending `__gte` to the field name * less than or equal to by appending `__lte` to the field name `{field name}[|__eq|__lte|__gte]={UTC RFC3339 date-time}` Time ranges may be specified by including both the `__gte` and `__lte` forms in the filter. For example: `created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z` **Filtering on multiple fields** `name__eq=myimage&created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z` **Filtering with filter operators** String field filtering supports the following operators: * equality: `__eq` * non-equality: `__neq` * in : `__in` * not in: `__nin` For `__in` and `__nin` filters list of parameters must be comma-separated: `name__in=fw-image1,fw-image2`
+String filter = "filter_example"; // String | URL-encoded query string parameter to filter returned data. `?filter={URL-encoded query string}` ###### Filterable fields: The table lists all the fields that can be filtered on with certain filters: | Field | = / __eq / __neq | __in / __nin | __lte / __gte |
| created_at | ✓ | ✓ | ✓ |
| datafile | ✓ | ✓ | |
| datafile_checksum | ✓ | ✓ | |
| datafile_size | ✓ | ✓ | |
| description | ✓ | ✓ | |
| etag | ✓ | ✓ | ✓ |
| id | ✓ | ✓ | |
| name | ✓ | ✓ | |
| updated_at | ✓ | ✓ | ✓ |
The query string is made up of key-value pairs separated by ampersands. For example, this query: `key1=value1&key2=value2&key3=value3` would be URL-encoded as: `?filter=key1__eq%3Dvalue1%26key2__eq%3Dvalue2%26key3__eq%3Dvalue3` **Filtering by properties** `name__eq=myimage` **Filtering on date-time fields** Date-time fields should be specified in UTC RFC3339 format, `YYYY-MM-DDThh:mm:ss.msZ`. There are three permitted variations: * UTC RFC3339 with milliseconds. Example: `2016-11-30T16:25:12.1234Z` * UTC RFC3339 without milliseconds. Example: `2016-11-30T16:25:12Z` * UTC RFC3339 shortened without milliseconds and punctuation. Example: `20161130T162512Z` Date-time filtering supports three operators: * equality by appending `__eq` to the field name * greater than or equal to by appending `__gte` to the field name * less than or equal to by appending `__lte` to the field name `{field name}[|__eq|__lte|__gte]={UTC RFC3339 date-time}` Time ranges may be specified by including both the `__gte` and `__lte` forms in the filter. For example: `created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z` **Filtering on multiple fields** `name__eq=myimage&created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z` **Filtering with filter operators** String field filtering supports the following operators: * equality: `__eq` * non-equality: `__neq` * in : `__in` * not in: `__nin` For `__in` and `__nin` filters list of parameters must be comma-separated: `name__in=fw-image1,fw-image2`
String createdAtIn = "createdAtIn_example"; // String | in filter for the \"created_at\" field
String createdAtNin = "createdAtNin_example"; // String | nin filter for the \"created_at\" field
DateTime createdAtLte = new DateTime(); // DateTime | lte filter for the \"created_at\" field
@@ -212,7 +212,7 @@ Name | Type | Description | Notes
**order** | **String**| ASC or DESC. | [optional]
**after** | **String**| The ID of the item after which to retrieve the next page. | [optional]
**include** | **String**| A comma-separated list of data fields to return. Currently supported: total_count. | [optional]
- **filter** | **String**| URL-encoded query string parameter to filter returned data `?filter={URL-encoded query string}` ###### Filterable fields: The table lists all the fields that can be filtered on with certain filters: <table> <thead> <tr> <th>Field</th> <th>= / __eq / __neq</th> <th>__in / __nin</th> <th>__lte / __gte</th> <tr> <thead> <tbody> <tr> <td>created_at</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> <tr> <td>datafile</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>datafile_checksum</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>datafile_size</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>description</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>etag</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> <tr> <td>id</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>name</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>updated_at</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> </tbody> </table> The query string is made up of key-value pairs separated by ampersands. For example, this query: `key1=value1&key2=value2&key3=value3` would be URL-encoded as: `?filter=key1__eq%3Dvalue1%26key2__eq%3Dvalue2%26key3__eq%3Dvalue3` **Filtering by properties** `name__eq=myimage` **Filtering on date-time fields** Date-time fields should be specified in UTC RFC3339 format, `YYYY-MM-DDThh:mm:ss.msZ`. There are three permitted variations: * UTC RFC3339 with milliseconds. Example: `2016-11-30T16:25:12.1234Z` * UTC RFC3339 without milliseconds. Example: `2016-11-30T16:25:12Z` * UTC RFC3339 shortened without milliseconds and punctuation. Example: `20161130T162512Z` Date-time filtering supports three operators: * equality by appending `__eq` to the field name * greater than or equal to by appending `__gte` to the field name * less than or equal to by appending `__lte` to the field name `{field name}[|__eq|__lte|__gte]={UTC RFC3339 date-time}` Time ranges may be specified by including both the `__gte` and `__lte` forms in the filter. For example: `created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z` **Filtering on multiple fields** `name__eq=myimage&created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z` **Filtering with filter operators** String field filtering supports the following operators: * equality: `__eq` * non-equality: `__neq` * in : `__in` * not in: `__nin` For `__in` and `__nin` filters list of parameters must be comma-separated: `name__in=fw-image1,fw-image2` | [optional]
+ **filter** | **String**| URL-encoded query string parameter to filter returned data. `?filter={URL-encoded query string}` ###### Filterable fields: The table lists all the fields that can be filtered on with certain filters: <table> <thead> <tr> <th>Field</th> <th>= / __eq / __neq</th> <th>__in / __nin</th> <th>__lte / __gte</th> <tr> <thead> <tbody> <tr> <td>created_at</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> <tr> <td>datafile</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>datafile_checksum</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>datafile_size</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>description</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>etag</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> <tr> <td>id</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>name</td> <td>✓</td> <td>✓</td> <td> </td> </tr> <tr> <td>updated_at</td> <td>✓</td> <td>✓</td> <td>✓</td> </tr> </tbody> </table> The query string is made up of key-value pairs separated by ampersands. For example, this query: `key1=value1&key2=value2&key3=value3` would be URL-encoded as: `?filter=key1__eq%3Dvalue1%26key2__eq%3Dvalue2%26key3__eq%3Dvalue3` **Filtering by properties** `name__eq=myimage` **Filtering on date-time fields** Date-time fields should be specified in UTC RFC3339 format, `YYYY-MM-DDThh:mm:ss.msZ`. There are three permitted variations: * UTC RFC3339 with milliseconds. Example: `2016-11-30T16:25:12.1234Z` * UTC RFC3339 without milliseconds. Example: `2016-11-30T16:25:12Z` * UTC RFC3339 shortened without milliseconds and punctuation. Example: `20161130T162512Z` Date-time filtering supports three operators: * equality by appending `__eq` to the field name * greater than or equal to by appending `__gte` to the field name * less than or equal to by appending `__lte` to the field name `{field name}[|__eq|__lte|__gte]={UTC RFC3339 date-time}` Time ranges may be specified by including both the `__gte` and `__lte` forms in the filter. For example: `created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z` **Filtering on multiple fields** `name__eq=myimage&created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z` **Filtering with filter operators** String field filtering supports the following operators: * equality: `__eq` * non-equality: `__neq` * in : `__in` * not in: `__nin` For `__in` and `__nin` filters list of parameters must be comma-separated: `name__in=fw-image1,fw-image2` | [optional]
**createdAtIn** | **String**| in filter for the \"created_at\" field | [optional]
**createdAtNin** | **String**| nin filter for the \"created_at\" field | [optional]
**createdAtLte** | **DateTime**| lte filter for the \"created_at\" field | [optional]
@@ -265,7 +265,7 @@ Name | Type | Description | Notes
Get an image.
-Retrieve a firmware image. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-images/12345678901234567890123456789012 \\ -H 'Authorization: <valid access token>' ```
+Retrieve a firmware image. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-images/1123456f9012ab567890120000789012 \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -320,7 +320,7 @@ Name | Type | Description | Notes
Append a chunk to an upload job
-Append a chunk to an upload job. To finish a job, upload a zero-length chunk. <br> **Usage example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs/12345678901234567890123456789012/chunks \\ -H 'Authorization: <valid access token>' \\ -H 'Content-MD5: Q2h1Y2sgSW51ZwDIAXR5IQ==' \\ -H 'Content-Type: binary/octet-stream' \\ -H 'Content-Length: 999' \\ -d '{ \"IGh0dHBzOi8vYXBpLnVzLWVhc3QtMS5tYmVkY2xvdWQuY29tLy92My9maXJtd2FyZS1pbWFnZXMvdXBsb2FkLWpvYnMve3VwbG9hZF9qb2JfaWR9W5rcw==\" }' ```
+Append a chunk to an upload job. To finish a job, upload a zero-length chunk. <BR/> **Note:** Chunk size must be between 5MB and 100MB, the last chunk can be less than 5MB; the maximum number of chunks is limited to 10,000. <br> **Usage example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs/12345678901234567890123456789012/chunks \\ -H 'Authorization: Bearer <api_key>' \\ -H 'Content-MD5: Q2h1Y2sgSW51ZwDIAXR5IQ==' \\ -H 'Content-Type: binary/octet-stream' \\ --data-binary '@chunkfile.bin' ```
### Example
```java
@@ -381,7 +381,7 @@ Name | Type | Description | Notes
List all metadata for uploaded chunks
-List all metadata for uploaded chunks. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs/12345678901234567890123456789012/chunks \\ -H 'Authorization: <valid access token>' ```
+List all metadata for uploaded chunks. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs/12345678901234567890123456789012/chunks \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -490,7 +490,7 @@ Name | Type | Description | Notes
Get metadata about a chunk
-Get metadata about a chunk. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs/12345678901234567890123456789012/chunks/12345678901234567890123456789012 \\ -H 'Authorization: <valid access token>' ```
+Get metadata about a chunk. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs/12345678901234567890123456789012/chunks/12345678901234567890123456789012 \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -547,7 +547,7 @@ Name | Type | Description | Notes
Create a new upload job.
-Create a new upload job <br> **Usage example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs \\ -H 'Authorization: <valid access token>' \\ -H 'content-type: application/json;charset=UTF-8' \\ -d '{ \"name\": \"New Linux update\", \"description\": \"New Linux update for my devices\" }' ```
+Create a new upload job <br> **Usage example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json;charset=UTF-8' \\ -d '{ \"name\": \"New Linux update\", \"description\": \"New Linux update for my devices\" }' ```
### Example
```java
@@ -602,7 +602,7 @@ Name | Type | Description | Notes
Delete an upload job
-Delete an upload job. <br> **Usage example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs/12345678901234567890123456789012 \\ -H 'Authorization: <valid access token>' ```
+Delete an upload job. <br> **Usage example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs/12345678901234567890123456789012 \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -657,7 +657,7 @@ Name | Type | Description | Notes
Get all upload jobs
-Get all upload jobs. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs \\ -H 'Authorization: <valid access token>' ```
+Get all upload jobs. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -772,7 +772,7 @@ Name | Type | Description | Notes
Retrieve information for an upload job
-Get an upload job. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs/12345678901234567890123456789012 \\ -H 'Authorization: <valid access token>' ```
+Get an upload job. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs/12345678901234567890123456789012 \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -827,7 +827,7 @@ Name | Type | Description | Notes
Update an upload job
-Update an upload job. <br> **Usage example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs/12345678901234567890123456789012 \\ -H 'Authorization: <valid access token>' \\ -d '{ \"name\": \"New Linux update\", \"description\": \"New Linux update for my class XX devices\" }' ```
+Update an upload job. <br> **Usage example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs/12345678901234567890123456789012 \\ -H 'Authorization: Bearer <api_key>' \\ -d '{ \"name\": \"New Linux update\", \"description\": \"New Linux update for my class XX devices\" }' ```
### Example
```java
diff --git a/backends/pelioncloud_devicemanagement/docs/DeviceUpdateFirmwareManifestsApi.md b/backends/pelioncloud_devicemanagement/docs/DeviceUpdateFirmwareManifestsApi.md
index d005972c1..fb07b71f4 100644
--- a/backends/pelioncloud_devicemanagement/docs/DeviceUpdateFirmwareManifestsApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/DeviceUpdateFirmwareManifestsApi.md
@@ -12,11 +12,11 @@ Method | HTTP request | Description
# **firmwareManifestCreate**
-> FirmwareManifest firmwareManifestCreate(datafile, description, keyTable, name)
+> FirmwareManifest firmwareManifestCreate(datafile, name, description, keyTable)
Upload a manifest
-Upload a firmware manifest. The API enforces a maximum manifest size of 2KB. <br> **Usage example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/firmware-manifests \\ -H 'Authorization: <valid access token>' \\ -H 'Content-Type: multipart/form-data' \\ -F 'datafile=@myimage.bin;type=application/octet-stream' \\ -F 'description=bla bla' \\ -F 'key_table=@myKeyTable.proto;type=' \\ -F 'name=My Manifest' ```
+Upload a firmware manifest. The API enforces a maximum manifest size of 2KB. <br> **Usage example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/firmware-manifests \\ -H 'Authorization: Bearer <api_key>' \\ -H 'Content-Type: multipart/form-data' \\ -F 'datafile=@myimage.bin;type=application/octet-stream' \\ -F 'description=bla bla' \\ -F 'key_table=@myKeyTable.proto;type=' \\ -F 'name=My Manifest' ```
### Example
```java
@@ -36,12 +36,12 @@ Bearer.setApiKey("YOUR API KEY");
//Bearer.setApiKeyPrefix("Token");
DeviceUpdateFirmwareManifestsApi apiInstance = new DeviceUpdateFirmwareManifestsApi();
-File datafile = new File("/path/to/file.txt"); // File | The manifest file to create. The API gateway enforces the account-specific file size.
-String description = "description_example"; // String | The description of the firmware manifest.
-File keyTable = new File("/path/to/file.txt"); // File | The key table of pre-shared keys for devices. The table is generated by the manifest tool.
+File datafile = new File("/path/to/file.txt"); // File | The manifest file to create. The API gateway enforces the account-specific file size. File name must not exceed 100 characters.
String name = "name_example"; // String | The name of the firmware manifest.
+String description = "description_example"; // String | The description of the firmware manifest.
+File keyTable = new File("/path/to/file.txt"); // File | The key table of pre-shared keys for devices. The table is generated by the manifest tool. File name must not exceed 100 characters.
try {
- FirmwareManifest result = apiInstance.firmwareManifestCreate(datafile, description, keyTable, name);
+ FirmwareManifest result = apiInstance.firmwareManifestCreate(datafile, name, description, keyTable);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling DeviceUpdateFirmwareManifestsApi#firmwareManifestCreate");
@@ -53,10 +53,10 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **datafile** | **File**| The manifest file to create. The API gateway enforces the account-specific file size. |
+ **datafile** | **File**| The manifest file to create. The API gateway enforces the account-specific file size. File name must not exceed 100 characters. |
+ **name** | **String**| The name of the firmware manifest. |
**description** | **String**| The description of the firmware manifest. | [optional]
- **keyTable** | **File**| The key table of pre-shared keys for devices. The table is generated by the manifest tool. | [optional]
- **name** | **String**| The name of the firmware manifest. | [optional]
+ **keyTable** | **File**| The key table of pre-shared keys for devices. The table is generated by the manifest tool. File name must not exceed 100 characters. | [optional]
### Return type
@@ -77,7 +77,7 @@ Name | Type | Description | Notes
Delete a manifest
-Delete a firmware manifest. <br> **Usage example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/firmware-manifests/12345678901234567890123456789012 \\ -H 'Authorization: <valid access token>' ```
+Delete a firmware manifest. <br> **Usage example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/firmware-manifests/11234567f9012ab56780120000789012 \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -132,7 +132,7 @@ Name | Type | Description | Notes
List all firmware manifests.
-List all firmware manifests. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-manifests \\ -H 'Authorization: <valid access token>' ```
+List all firmware manifests. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-manifests \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
@@ -267,7 +267,7 @@ Name | Type | Description | Notes
Get a manifest
-Retrieve a firmware manifest. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-manifests/12345678901234567890123456789012 \\ -H 'Authorization: <valid access token>' ```
+Retrieve a firmware manifest. <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-manifests/1123467f9012ab567890120000789012 \\ -H 'Authorization: Bearer <api_key>' ```
### Example
```java
diff --git a/backends/pelioncloud_devicemanagement/docs/EchoDevice.md b/backends/pelioncloud_devicemanagement/docs/EchoDevice.md
new file mode 100644
index 000000000..696d4aa1d
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/EchoDevice.md
@@ -0,0 +1,17 @@
+
+# EchoDevice
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**createdAt** | [**DateTime**](DateTime.md) | Response creation UTC time. | [optional]
+**deviceId** | **String** | The device ID. | [optional]
+**endpointName** | **String** | The endpoint name. | [optional]
+**lastDesiredAt** | [**DateTime**](DateTime.md) | The last time a write command was initiated on a resource. | [optional]
+**lastReportedAt** | [**DateTime**](DateTime.md) | The last time any resource's reported value was updated. | [optional]
+**object** | **String** | API Resource name | [optional]
+**resources** | [**List<EchoResource>**](EchoResource.md) | The list of device resources stored in Device Echo. | [optional]
+**updatedAt** | [**DateTime**](DateTime.md) | The time of last registration event of a Device Echo object. | [optional]
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/EchoResource.md b/backends/pelioncloud_devicemanagement/docs/EchoResource.md
new file mode 100644
index 000000000..5fa6b541b
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/EchoResource.md
@@ -0,0 +1,13 @@
+
+# EchoResource
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**desired** | [**EchoResourceDesired**](EchoResourceDesired.md) | | [optional]
+**reported** | [**EchoResourceReported**](EchoResourceReported.md) | | [optional]
+**resourcePath** | **String** | The path of the resource. | [optional]
+**subscribed** | **Boolean** | System-level subscription status of the resource. If any of the applications has placed a subscription, the status is true. Overlapping subscriptions from multiple applications do not increase the load on the device as the server handles the multiplexing. | [optional]
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/EchoResourceDesired.md b/backends/pelioncloud_devicemanagement/docs/EchoResourceDesired.md
new file mode 100644
index 000000000..9c1b5b702
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/EchoResourceDesired.md
@@ -0,0 +1,13 @@
+
+# EchoResourceDesired
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**desiredAt** | [**DateTime**](DateTime.md) | The time of the latest value write was initiated. | [optional]
+**status** | [**BigDecimal**](BigDecimal.md) | The status of the desired value. 0 = 'pending write', 1 = 'success', 2 = 'failed'. | [optional]
+**statusUpdatedAt** | [**DateTime**](DateTime.md) | The time of the last status update. | [optional]
+**value** | **byte[]** | The desired value in base64 encoded format. | [optional]
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/EchoResourceReported.md b/backends/pelioncloud_devicemanagement/docs/EchoResourceReported.md
new file mode 100644
index 000000000..4f32322e8
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/EchoResourceReported.md
@@ -0,0 +1,13 @@
+
+# EchoResourceReported
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**contentType** | **String** | Content type of the reported resource value. | [optional]
+**expiresAt** | [**DateTime**](DateTime.md) | The time after which the reported value is not valid, calculated based on the max-age of the resource value the device reported. | [optional]
+**reportedAt** | [**DateTime**](DateTime.md) | The time the last value was reported. | [optional]
+**value** | **byte[]** | The reported value in base64 encoded format. | [optional]
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/EdgeProxyApi.md b/backends/pelioncloud_devicemanagement/docs/EdgeProxyApi.md
new file mode 100644
index 000000000..c4fde3655
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/EdgeProxyApi.md
@@ -0,0 +1,76 @@
+# EdgeProxyApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**communicateWithGatewayBasedServices**](EdgeProxyApi.md#communicateWithGatewayBasedServices) | **GET** v3preview1/devices/{id}/services/{address}/connection | Establish a tunnel connection to connected devices.
+
+
+
+# **communicateWithGatewayBasedServices**
+> Void communicateWithGatewayBasedServices(connection, upgrade, secWebSocketVersion, secWebSocketKey, id, address, origin)
+
+Establish a tunnel connection to connected devices.
+
+This WebSocket-based API for clients establishes connections to services on connected gateways. <br> Establish WebSocket connections to the edge-proxy service. After you establish a Websocket connection, the Edge proxy sends data between cloud- and gateway-based services. <br> All communication is byte-based.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.EdgeProxyApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+EdgeProxyApi apiInstance = new EdgeProxyApi();
+String connection = "Upgrade"; // String | The websocket connection header. Must be 'Upgrade'.
+String upgrade = "websocket"; // String | The protocol upgrade header. Must be 'websocket'.
+Integer secWebSocketVersion = 13; // Integer | WebSocket version of the protocol. Must be 13.
+byte[] secWebSocketKey = B; // byte[] | The value of this header field must be a nonce consisting of a randomly selected 16-byte value that has been base64-encoded (see this section from RFC6455 - https://tools.ietf.org/html/rfc6455#section-11.3.1). The nonce must be selected randomly for each connection. An example is \"dGhlIHNhbXBsZSBub25jZQ==\".
+String id = "id_example"; // String | The Device ID.
+String address = "address_example"; // String | The address of the TCP service listening on a specific port on the gateway. If a TCP service is listening on localhost with port 5000 and is ready to accept incoming traffic, the value of this parameter should be `localhost:5000`.
+String origin = "origin_example"; // String | Originating host of the request.
+try {
+ Void result = apiInstance.communicateWithGatewayBasedServices(connection, upgrade, secWebSocketVersion, secWebSocketKey, id, address, origin);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling EdgeProxyApi#communicateWithGatewayBasedServices");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **connection** | **String**| The websocket connection header. Must be 'Upgrade'. | [default to Upgrade]
+ **upgrade** | **String**| The protocol upgrade header. Must be 'websocket'. | [default to websocket]
+ **secWebSocketVersion** | **Integer**| WebSocket version of the protocol. Must be 13. | [default to 13]
+ **secWebSocketKey** | **byte[]**| The value of this header field must be a nonce consisting of a randomly selected 16-byte value that has been base64-encoded (see this section from RFC6455 - https://tools.ietf.org/html/rfc6455#section-11.3.1). The nonce must be selected randomly for each connection. An example is \"dGhlIHNhbXBsZSBub25jZQ==\". |
+ **id** | **String**| The Device ID. |
+ **address** | **String**| The address of the TCP service listening on a specific port on the gateway. If a TCP service is listening on localhost with port 5000 and is ready to accept incoming traffic, the value of this parameter should be `localhost:5000`. |
+ **origin** | **String**| Originating host of the request. | [optional]
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/ErrorResponse.md b/backends/pelioncloud_devicemanagement/docs/ErrorResponse.md
index 4f0e77e0f..ce185cca6 100644
--- a/backends/pelioncloud_devicemanagement/docs/ErrorResponse.md
+++ b/backends/pelioncloud_devicemanagement/docs/ErrorResponse.md
@@ -7,7 +7,7 @@ Name | Type | Description | Notes
**code** | **Integer** | HTTP response code. | [optional]
**fields** | [**List<Fields>**](Fields.md) | Details of the error fields. | [optional]
**message** | **String** | Description of the error. | [optional]
-**object** | **String** | Response type, always \"error\". | [optional]
+**object** | **String** | Response type: always `error`. | [optional]
**requestId** | **String** | Request ID. | [optional]
**type** | **String** | Type of error. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/FactoryManufacturingStatisticsApi.md b/backends/pelioncloud_devicemanagement/docs/FactoryManufacturingStatisticsApi.md
new file mode 100644
index 000000000..973812f08
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/FactoryManufacturingStatisticsApi.md
@@ -0,0 +1,66 @@
+# FactoryManufacturingStatisticsApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**manufacturingStatisticsReport**](FactoryManufacturingStatisticsApi.md#manufacturingStatisticsReport) | **GET** v3/manufacturing/statistics | Retrieve provisioning statistics for devices in your factories.
+
+
+
+# **manufacturingStatisticsReport**
+> StatisticsReportListResponse manufacturingStatisticsReport(start, end)
+
+Retrieve provisioning statistics for devices in your factories.
+
+Get manufacturing statistics report. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/manufacturing/statistics?start=2020-06-23T21:00:00.000Z&end=2020-07-01T20:59:59.999Z --header 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.FactoryManufacturingStatisticsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+FactoryManufacturingStatisticsApi apiInstance = new FactoryManufacturingStatisticsApi();
+DateTime start = new DateTime(); // DateTime | The start date and time for the report.
+DateTime end = new DateTime(); // DateTime | The end date and time for the report. The default value is the current date-time.
+try {
+ StatisticsReportListResponse result = apiInstance.manufacturingStatisticsReport(start, end);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling FactoryManufacturingStatisticsApi#manufacturingStatisticsReport");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **start** | **DateTime**| The start date and time for the report. |
+ **end** | **DateTime**| The end date and time for the report. The default value is the current date-time. | [optional]
+
+### Return type
+
+[**StatisticsReportListResponse**](StatisticsReportListResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/Fields.md b/backends/pelioncloud_devicemanagement/docs/Fields.md
index 598cfab3d..b4b4753a7 100644
--- a/backends/pelioncloud_devicemanagement/docs/Fields.md
+++ b/backends/pelioncloud_devicemanagement/docs/Fields.md
@@ -5,7 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**message** | **String** | Error description. | [optional]
-**name** | **String** | The field name in the request for which the validation has failed. | [optional]
+**name** | **String** | The field name in the failed validation request. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/FirmwareImage.md b/backends/pelioncloud_devicemanagement/docs/FirmwareImage.md
index cbc31ef6e..f3a168b0e 100644
--- a/backends/pelioncloud_devicemanagement/docs/FirmwareImage.md
+++ b/backends/pelioncloud_devicemanagement/docs/FirmwareImage.md
@@ -5,7 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**createdAt** | [**DateTime**](DateTime.md) | The time the entity was created. | [optional]
-**datafile** | **String** | The firmware image file URL | [optional]
+**datafile** | **String** | The firmware image file URL. | [optional]
**datafileChecksum** | **String** | The checksum (sha256) generated for the datafile. | [optional]
**datafileSize** | **Long** | The size of the datafile in bytes. | [optional]
**description** | **String** | The description of the object. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/FirmwareManifest.md b/backends/pelioncloud_devicemanagement/docs/FirmwareManifest.md
index 4455c4028..1e0405264 100644
--- a/backends/pelioncloud_devicemanagement/docs/FirmwareManifest.md
+++ b/backends/pelioncloud_devicemanagement/docs/FirmwareManifest.md
@@ -5,17 +5,42 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**createdAt** | [**DateTime**](DateTime.md) | The time the entity was created. | [optional]
-**datafile** | **String** | The URL of the firmware manifest binary | [optional]
-**datafileSize** | **Long** | The size of the datafile in bytes | [optional]
+**datafile** | **String** | The URL of the ASN.1 DER-encoded firmware manifest binary. | [optional]
+**datafileSize** | **Long** | The size of the firmware manifest in bytes. | [optional]
+**deliveredPayloadDigest** | **String** | Digest (SHA256, hex-encoded) of the payload to deliver to the device. | [optional]
+**deliveredPayloadSize** | **Long** | The size in bytes of the payload to deliver to the device. | [optional]
+**deliveredPayloadType** | [**DeliveredPayloadTypeEnum**](#DeliveredPayloadTypeEnum) | Type of the payload to deliver to the device (full or delta image). | [optional]
+**deliveredPayloadUrl** | **String** | The URL of the payload to deliver to the device. | [optional]
**description** | **String** | The description of the firmware manifest. | [optional]
-**deviceClass** | **String** | The class of the device. | [optional]
+**deviceClass** | [**UUID**](UUID.md) | The device class ID. | [optional]
+**deviceVendor** | [**UUID**](UUID.md) | The device vendor ID. | [optional]
**etag** | **String** | API resource entity version. | [optional]
**id** | **String** | The firmware manifest ID. | [optional]
**keyTable** | **String** | The key table of pre-shared keys for devices. | [optional]
-**name** | **String** | The name of the object. | [optional]
+**manifestSchemaVersion** | [**ManifestSchemaVersionEnum**](#ManifestSchemaVersionEnum) | Version of the manifest schema (1 or 3). | [optional]
+**name** | **String** | The name of the manifest. | [optional]
**object** | **String** | Entity name: always 'firmware-manifest'. | [optional]
+**parsedRawManifest** | **Object** | Raw manifest in JSON format, parsed from ASN.1 DER encoding. Fields may change. Backwards compatibility is not guaranteed. Recommended for debugging only. | [optional]
+**precursorPayloadDigest** | **String** | Digest (SHA256, hex-encoded) of the currently installed payload. | [optional]
**timestamp** | [**DateTime**](DateTime.md) | The firmware manifest version as a timestamp. | [optional]
+**updatePriority** | **Long** | Update priority, passed to the application callback when an update is performed. Allows the application to make application-specific decisions. | [optional]
**updatedAt** | [**DateTime**](DateTime.md) | The time the entity was updated. | [optional]
+
+## Enum: DeliveredPayloadTypeEnum
+Name | Value
+---- | -----
+FULL | "full"
+DELTA | "delta"
+
+
+
+## Enum: ManifestSchemaVersionEnum
+Name | Value
+---- | -----
+_1 | "1"
+_3 | "3"
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/GatewayLogsPublicApiApi.md b/backends/pelioncloud_devicemanagement/docs/GatewayLogsPublicApiApi.md
new file mode 100644
index 000000000..9488eee33
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/GatewayLogsPublicApiApi.md
@@ -0,0 +1,216 @@
+# GatewayLogsPublicApiApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**getDeviceLogBasedOnLogID**](GatewayLogsPublicApiApi.md#getDeviceLogBasedOnLogID) | **GET** v3/device-logs/{device_log_id} | Retrieve a device log by ID.
+[**listGatewayDeviceLogs**](GatewayLogsPublicApiApi.md#listGatewayDeviceLogs) | **GET** v3/device-logs | List all device logs based on filters
+[**listSingleGatewayDeviceLogs**](GatewayLogsPublicApiApi.md#listSingleGatewayDeviceLogs) | **GET** v3/devices/{device_id}/logs | Return the logs for a specific device.
+
+
+
+# **getDeviceLogBasedOnLogID**
+> Log getDeviceLogBasedOnLogID(deviceLogId)
+
+Retrieve a device log by ID.
+
+Retrieve a device log from a device by log ID. **Example usage:** ``` curl -X GET \\ -H 'Authorization: Bearer <valid access token>' \\ https://api.us-east-1.mbedcloud.com/v3/device-logs/(device_log_id) ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.GatewayLogsPublicApiApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+GatewayLogsPublicApiApi apiInstance = new GatewayLogsPublicApiApi();
+String deviceLogId = "deviceLogId_example"; // String | The ID of the device log.
+try {
+ Log result = apiInstance.getDeviceLogBasedOnLogID(deviceLogId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling GatewayLogsPublicApiApi#getDeviceLogBasedOnLogID");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **deviceLogId** | **String**| The ID of the device log. |
+
+### Return type
+
+[**Log**](Log.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **listGatewayDeviceLogs**
+> LogsPage listGatewayDeviceLogs(deviceIdIn, limit, after, order, include, timestampLte, timestampGte, appNameEq, typeEq, messageEq, levelGte)
+
+List all device logs based on filters
+
+List logs for all devices based on a combination of filters. **Example usage:** ``` curl -X GET \\ -H 'Authorization: Bearer <valid access token>' \\ https://api.us-east-1.mbedcloud.com/v3/device-logs ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.GatewayLogsPublicApiApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+GatewayLogsPublicApiApi apiInstance = new GatewayLogsPublicApiApi();
+String deviceIdIn = "deviceIdIn_example"; // String | The device ID for which to retrieve logs.
+Integer limit = 100; // Integer | Limit the number of returned results. The default value is 100.
+String after = "after_example"; // String | The entity ID to fetch after the given one.
+String order = "DESC"; // String | Record order. Acceptable values: ASC, DESC.
+String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count
+DateTime timestampLte = new DateTime(); // DateTime | RFC 3339 UTC timestamp range upper limit.
+DateTime timestampGte = new DateTime(); // DateTime | RFC 3339 UTC timestamp range lower limit.
+String appNameEq = "appNameEq_example"; // String | Name of the application on a device that generated logs.
+String typeEq = "typeEq_example"; // String | Device log type filter.
+String messageEq = "messageEq_example"; // String | Device log message filter.
+String levelGte = "levelGte_example"; // String | Minimum severity level of logs to retrieve.
+try {
+ LogsPage result = apiInstance.listGatewayDeviceLogs(deviceIdIn, limit, after, order, include, timestampLte, timestampGte, appNameEq, typeEq, messageEq, levelGte);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling GatewayLogsPublicApiApi#listGatewayDeviceLogs");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **deviceIdIn** | **String**| The device ID for which to retrieve logs. | [optional]
+ **limit** | **Integer**| Limit the number of returned results. The default value is 100. | [optional] [default to 100]
+ **after** | **String**| The entity ID to fetch after the given one. | [optional]
+ **order** | **String**| Record order. Acceptable values: ASC, DESC. | [optional] [default to DESC] [enum: ASC, DESC]
+ **include** | **String**| Comma-separated additional data to return. Currently supported: total_count | [optional]
+ **timestampLte** | **DateTime**| RFC 3339 UTC timestamp range upper limit. | [optional]
+ **timestampGte** | **DateTime**| RFC 3339 UTC timestamp range lower limit. | [optional]
+ **appNameEq** | **String**| Name of the application on a device that generated logs. | [optional]
+ **typeEq** | **String**| Device log type filter. | [optional]
+ **messageEq** | **String**| Device log message filter. | [optional]
+ **levelGte** | **String**| Minimum severity level of logs to retrieve. | [optional] [enum: DEBUG, TRACE, INFO, WARNING, ERROR, CRITICAL]
+
+### Return type
+
+[**LogsPage**](LogsPage.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **listSingleGatewayDeviceLogs**
+> LogsPage listSingleGatewayDeviceLogs(deviceId, limit, after, order, include, timestampLte, timestampGte, appNameEq, typeEq, messageEq, levelGte)
+
+Return the logs for a specific device.
+
+Retrieve logs for a given device based on a combination of filters. **Example usage:** ``` curl -X GET \\ -H 'Authorization: Bearer <valid access token>' \\ https://api.us-east-1.mbedcloud.com/v3/devices/{device_id}/logs ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.GatewayLogsPublicApiApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+GatewayLogsPublicApiApi apiInstance = new GatewayLogsPublicApiApi();
+String deviceId = "deviceId_example"; // String | The id of the device
+Integer limit = 100; // Integer | Limit the number of returned results. The default value is 100.
+String after = "after_example"; // String | The entity ID to fetch after the given one.
+String order = "DESC"; // String | Record order. Acceptable values: ASC, DESC.
+String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count
+DateTime timestampLte = new DateTime(); // DateTime | RFC 3339 UTC timestamp range upper limit.
+DateTime timestampGte = new DateTime(); // DateTime | RFC 3339 UTC timestamp range lower limit.
+String appNameEq = "appNameEq_example"; // String | Name of the application on a device that generated logs.
+String typeEq = "typeEq_example"; // String | Device log type filter.
+String messageEq = "messageEq_example"; // String | Device log message filter.
+String levelGte = "levelGte_example"; // String | Minimum severity level of logs to retrieve.
+try {
+ LogsPage result = apiInstance.listSingleGatewayDeviceLogs(deviceId, limit, after, order, include, timestampLte, timestampGte, appNameEq, typeEq, messageEq, levelGte);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling GatewayLogsPublicApiApi#listSingleGatewayDeviceLogs");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **deviceId** | **String**| The id of the device |
+ **limit** | **Integer**| Limit the number of returned results. The default value is 100. | [optional] [default to 100]
+ **after** | **String**| The entity ID to fetch after the given one. | [optional]
+ **order** | **String**| Record order. Acceptable values: ASC, DESC. | [optional] [default to DESC] [enum: ASC, DESC]
+ **include** | **String**| Comma-separated additional data to return. Currently supported: total_count | [optional]
+ **timestampLte** | **DateTime**| RFC 3339 UTC timestamp range upper limit. | [optional]
+ **timestampGte** | **DateTime**| RFC 3339 UTC timestamp range lower limit. | [optional]
+ **appNameEq** | **String**| Name of the application on a device that generated logs. | [optional]
+ **typeEq** | **String**| Device log type filter. | [optional]
+ **messageEq** | **String**| Device log message filter. | [optional]
+ **levelGte** | **String**| Minimum severity level of logs to retrieve. | [optional] [enum: DEBUG, TRACE, INFO, WARNING, ERROR, CRITICAL]
+
+### Return type
+
+[**LogsPage**](LogsPage.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/GatewayTerminalPublicApiApi.md b/backends/pelioncloud_devicemanagement/docs/GatewayTerminalPublicApiApi.md
new file mode 100644
index 000000000..3e0344ff1
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/GatewayTerminalPublicApiApi.md
@@ -0,0 +1,76 @@
+# GatewayTerminalPublicApiApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**establishGatewayDeviceConsoleSession**](GatewayTerminalPublicApiApi.md#establishGatewayDeviceConsoleSession) | **GET** v3/devices/{id}/console | Establish a console session
+
+
+
+# **establishGatewayDeviceConsoleSession**
+> Void establishGatewayDeviceConsoleSession(id, connection, upgrade, secWebSocketVersion, secWebSocketKey, secWebSocketProtocol, origin)
+
+Establish a console session
+
+This WebSocket-based API establishes a console session with a gateway device. <br> Use this endpoint to establish a WebSocket connection to the device console. Once the connection is in place, you can use the protocol below to exchange messages related to the console session. You must provide the api key as bearer token to authenticate the request. All messages sent between the server and the client are contained inside a message envelope. The envelope contains a type field describing what format the payload is in and how to interpret the message: ```json { \"type\": [string], \"payload\": [any], \"sessionID\": [string] } ``` <br> ## Message types and payload formats | Message Type | Payload Format | Description | |:------------- |:------------- |:------------- | | **resize** | `ResizePayload` | Can be sent by the client to the server to notify the device that the console window size has changed. | | **input** | `string` | Sent from the client to the server when keyboard input is provided to the console. stdin | | **output** | `string` | Sent from the server to the client when console output is produced. stdout + stderr | ### `ResizePayload` ```json { \"width\": [integer], // number of columns \"height\": [integer] // number of rows } ``` | Field Name | Format | Description | |:------------- |:------------- |:------------- | | width | integer | The width of the console window in columns. | | height | integer | The height of the console window in rows. | <br> ## Protocol Sequence Diagram The diagram shows how messages are passed between the client and the server after initiating a console session: ``` Client Pelion Cloud (/v3/devices/{id}/console) Device | | | | | | |-----------------[Input]------------------>| | | |-----------------[Input]------------------>| | |<----------------[Output]------------------| |<----------------[Output]------------------| | |-----------------[Input]------------------>| | | |-----------------[Input]------------------>| | |<----------------[Output]------------------| |<----------------[Output]------------------| | | | | |-----------------[Resize]----------------->| | | |-----------------[Resize]----------------->| | | | | |<----------------[Output]------------------| |<----------------[Output]------------------| | | | | | | | | | | Input is always forwarded from the client to the console session on the relevant device to be passed to the stdin stream. The client does not need to provide a session ID for input messages. Ouptut is forwarded from the device console session's stdout and stderr streams to the client. Resize messages are forwarded from the client to the console session on the device. ``` <br> If the console session is terminated by the device disconnecting, the WebSocket connection is closed. <br> All communication is text-based. <br> ## Errors and Close Codes - If you send binary data instead of text data over the websocket connection, the socket closes with code 1003. - If you send text data that is not valid JSON, the socket closes with code 1002 and error message 'Data could not be parsed as JSON'. - If you send text data that is valid JSON but does not follow a valid message schema, the socket closes with code 1002 and error message 'Object format invalid'. - If you try to establish a console session with a device that is not prepared for console, the socket closes with code 1011 and error message 'The device console is not working'. - If your client fails to respond to ping messages from the server with a matching pong message, the server disconnects the client, assuming the connection has timed out.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.GatewayTerminalPublicApiApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+GatewayTerminalPublicApiApi apiInstance = new GatewayTerminalPublicApiApi();
+String id = "id_example"; // String | The id of the device
+String connection = "Upgrade"; // String | The websocket connection header. Must be 'Upgrade'.
+String upgrade = "websocket"; // String | The protocol upgrade header. Must be 'websocket'.
+Integer secWebSocketVersion = 13; // Integer | WebSocket version. Must be 13.
+byte[] secWebSocketKey = B; // byte[] | The value of this header field must be a nonce consisting of a randomly selected 16-byte value that has been base64-encoded (see Section 4 of [RFC4648]). The nonce must be selected randomly for each connection.
+String secWebSocketProtocol = "secWebSocketProtocol_example"; // String | Access key or user token must be present in the `Sec-WebSocket-Protocol` header **if Authorization header cannot be provided**: `Sec-WebSocket-Protocol:wss,pelion_ak_{access_key}`.
+String origin = "origin_example"; // String | Originating host of the request.
+try {
+ Void result = apiInstance.establishGatewayDeviceConsoleSession(id, connection, upgrade, secWebSocketVersion, secWebSocketKey, secWebSocketProtocol, origin);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling GatewayTerminalPublicApiApi#establishGatewayDeviceConsoleSession");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **id** | **String**| The id of the device |
+ **connection** | **String**| The websocket connection header. Must be 'Upgrade'. | [default to Upgrade]
+ **upgrade** | **String**| The protocol upgrade header. Must be 'websocket'. | [default to websocket]
+ **secWebSocketVersion** | **Integer**| WebSocket version. Must be 13. | [default to 13]
+ **secWebSocketKey** | **byte[]**| The value of this header field must be a nonce consisting of a randomly selected 16-byte value that has been base64-encoded (see Section 4 of [RFC4648]). The nonce must be selected randomly for each connection. |
+ **secWebSocketProtocol** | **String**| Access key or user token must be present in the `Sec-WebSocket-Protocol` header **if Authorization header cannot be provided**: `Sec-WebSocket-Protocol:wss,pelion_ak_{access_key}`. | [optional]
+ **origin** | **String**| Originating host of the request. | [optional]
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/GetTrustAnchorsResponse.md b/backends/pelioncloud_devicemanagement/docs/GetTrustAnchorsResponse.md
new file mode 100644
index 000000000..b07003c8f
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/GetTrustAnchorsResponse.md
@@ -0,0 +1,24 @@
+
+# GetTrustAnchorsResponse
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**after** | **String** | An offset token for the current page. | [optional]
+**data** | [**List<TrustAnchorResponse>**](TrustAnchorResponse.md) | The list of trust anchors of the account. | [optional]
+**hasMore** | **Boolean** | Indicates whether additional results are available. | [optional]
+**limit** | **Integer** | Indicates how many objects to retrieve in the page. The minimum limit is 2 and the maximum is 1000. Limit values outside of this range are set to the closest limit. | [optional]
+**object** | **String** | The type of this API object is a `list`. | [optional]
+**order** | [**OrderEnum**](#OrderEnum) | Indicates how to order the entries based on when they were created. | [optional]
+**totalCount** | **Integer** | | [optional]
+
+
+
+## Enum: OrderEnum
+Name | Value
+---- | -----
+ASC | "ASC"
+DESC | "DESC"
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/GlobalSignCredentials.md b/backends/pelioncloud_devicemanagement/docs/GlobalSignCredentials.md
index 78e114c74..b4d77cdb2 100644
--- a/backends/pelioncloud_devicemanagement/docs/GlobalSignCredentials.md
+++ b/backends/pelioncloud_devicemanagement/docs/GlobalSignCredentials.md
@@ -4,11 +4,11 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**apiKey** | **String** | Unique ID for API client (provided by GlobalSign). |
-**apiSecret** | **String** | API Secret matching the API key (provided by GlobalSign). |
-**clientCertificate** | **String** | The client certificate provided by GlobalSign to allow HTTPS connection over TLS/SSL. The certificate wraps a public key that matches a private key provided by the customer. The certificate must be in PEM format. |
-**passphrase** | **String** | The passphrase to decrypt the private key in case it is encrypted. Empty if the private key is not encrypted. | [optional]
-**privateKey** | **String** | The private key that matches the client certificate to allow HTTPS connection over TLS/SSL. The private key may be encrypted using a symmetric encryption key derived from a passphrase. The private key must be in PEM format. |
+**apiKey** | **String** | Unique ID for API client (provided by GlobalSign). |
+**apiSecret** | **String** | API secret matching the API key (provided by GlobalSign). |
+**clientCertificate** | **String** | The client certificate provided by GlobalSign to allow HTTPS connection over TLS/SSL. The certificate wraps a public key that matches a private key provided by the customer. The certificate must be in PEM format. |
+**passphrase** | **String** | The passphrase to decrypt the private key in case it is encrypted. Empty if the private key is not encrypted. | [optional]
+**privateKey** | **String** | The private key that matches the client certificate to allow HTTPS connection over TLS/SSL. The private key may be encrypted using a symmetric encryption key derived from a passphrase. The private key must be in PEM format. |
diff --git a/backends/pelioncloud_devicemanagement/docs/GroupSummary.md b/backends/pelioncloud_devicemanagement/docs/GroupSummary.md
index e3967ebf4..4452b1846 100644
--- a/backends/pelioncloud_devicemanagement/docs/GroupSummary.md
+++ b/backends/pelioncloud_devicemanagement/docs/GroupSummary.md
@@ -6,6 +6,7 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**accountId** | **String** | The ID of the account this group belongs to. |
**apikeyCount** | **Integer** | The number of API keys in this group. |
+**applicationCount** | **Integer** | The number of applications in this group. | [optional]
**createdAt** | [**DateTime**](DateTime.md) | Creation UTC time RFC3339. | [optional]
**etag** | **String** | API resource entity version. |
**id** | **String** | The ID of the group. |
diff --git a/backends/pelioncloud_devicemanagement/docs/GroupSummaryList.md b/backends/pelioncloud_devicemanagement/docs/GroupSummaryList.md
index dfbdbb395..56cbd9902 100644
--- a/backends/pelioncloud_devicemanagement/docs/GroupSummaryList.md
+++ b/backends/pelioncloud_devicemanagement/docs/GroupSummaryList.md
@@ -4,7 +4,7 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**after** | **String** | The entity ID to fetch after the given one. | [optional]
+**after** | **String** | The entity ID to retrieve after the given one. | [optional]
**data** | [**List<GroupSummary>**](GroupSummary.md) | A list of entities. |
**hasMore** | **Boolean** | Flag indicating whether there are more results. |
**limit** | **Integer** | The number of results to return (2-1000), or equal to `total_count`. |
diff --git a/backends/pelioncloud_devicemanagement/docs/IdentityProviderCreationReq.md b/backends/pelioncloud_devicemanagement/docs/IdentityProviderCreationReq.md
index 3f744786d..71bafa9b5 100644
--- a/backends/pelioncloud_devicemanagement/docs/IdentityProviderCreationReq.md
+++ b/backends/pelioncloud_devicemanagement/docs/IdentityProviderCreationReq.md
@@ -25,6 +25,7 @@ SUSPENDED | "SUSPENDED"
Name | Value
---- | -----
SAML2 | "SAML2"
+OIDC | "OIDC"
diff --git a/backends/pelioncloud_devicemanagement/docs/IdentityProviderInfo.md b/backends/pelioncloud_devicemanagement/docs/IdentityProviderInfo.md
index b98e96732..ea6131475 100644
--- a/backends/pelioncloud_devicemanagement/docs/IdentityProviderInfo.md
+++ b/backends/pelioncloud_devicemanagement/docs/IdentityProviderInfo.md
@@ -12,6 +12,7 @@ Name | Type | Description | Notes
**isDefault** | **Boolean** | Flag indicating whether this is the global default identity provider. | [optional]
**name** | **String** | Name of the identity provider. |
**object** | [**ObjectEnum**](#ObjectEnum) | Entity name: always 'identity-provider' |
+**oidcAttributes** | [**OIDCInfo**](OIDCInfo.md) | OIDC specific attributes. | [optional]
**saml2Attributes** | [**SAML2Info**](SAML2Info.md) | SAML2 specific attributes. | [optional]
**status** | [**StatusEnum**](#StatusEnum) | Status of the identity provider. | [optional]
**type** | [**TypeEnum**](#TypeEnum) | Identity provider type. |
diff --git a/backends/pelioncloud_devicemanagement/docs/IdentityProviderList.md b/backends/pelioncloud_devicemanagement/docs/IdentityProviderList.md
index 47acb5d60..00ff8a13a 100644
--- a/backends/pelioncloud_devicemanagement/docs/IdentityProviderList.md
+++ b/backends/pelioncloud_devicemanagement/docs/IdentityProviderList.md
@@ -4,7 +4,7 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**after** | **String** | The entity ID to fetch after the given one. | [optional]
+**after** | **String** | The entity ID to retrieve after the given one. | [optional]
**data** | [**List<IdentityProviderInfo>**](IdentityProviderInfo.md) | A list of entities. |
**hasMore** | **Boolean** | Flag indicating whether there are more results. |
**limit** | **Integer** | The number of results to return , or equal to `total_count`. |
diff --git a/backends/pelioncloud_devicemanagement/docs/IdentityProviderUpdateReq.md b/backends/pelioncloud_devicemanagement/docs/IdentityProviderUpdateReq.md
index 7176060ea..8f9029b98 100644
--- a/backends/pelioncloud_devicemanagement/docs/IdentityProviderUpdateReq.md
+++ b/backends/pelioncloud_devicemanagement/docs/IdentityProviderUpdateReq.md
@@ -25,6 +25,7 @@ SUSPENDED | "SUSPENDED"
Name | Value
---- | -----
SAML2 | "SAML2"
+OIDC | "OIDC"
diff --git a/backends/pelioncloud_devicemanagement/docs/KeyValue.md b/backends/pelioncloud_devicemanagement/docs/KeyValue.md
new file mode 100644
index 000000000..61a1c3371
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/KeyValue.md
@@ -0,0 +1,11 @@
+
+# KeyValue
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**key** | **String** | |
+**value** | **String** | |
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/Log.md b/backends/pelioncloud_devicemanagement/docs/Log.md
new file mode 100644
index 000000000..cdbe5e9ce
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/Log.md
@@ -0,0 +1,32 @@
+
+# Log
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**accountId** | **String** | The ID of the account associated with the device. | [optional]
+**appName** | **String** | A tag indicating which application or software module produced the log message. | [optional]
+**createdAt** | [**DateTime**](DateTime.md) | RFC 3339 UTC timestamp indicating when the resource entity was created. | [optional]
+**deviceId** | **String** | Device ID. | [optional]
+**etag** | **String** | Entity instance signature, or Unix timestamp of last customer update. | [optional]
+**id** | **String** | mUUID Entity ID. Each device log has a unique ID. | [optional]
+**level** | [**LevelEnum**](#LevelEnum) | Log entry severity level. | [optional]
+**message** | **String** | Log message body. | [optional]
+**object** | **String** | Device log resource name. | [optional]
+**timestamp** | [**DateTime**](DateTime.md) | RFC 3339 UTC timestamp indicating indicating the device time the message was printed. | [optional]
+**type** | **String** | Device log type. | [optional]
+
+
+
+## Enum: LevelEnum
+Name | Value
+---- | -----
+DEBUG | "DEBUG"
+TRACE | "TRACE"
+INFO | "INFO"
+WARNING | "WARNING"
+ERROR | "ERROR"
+CRITICAL | "CRITICAL"
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/LoginProfile.md b/backends/pelioncloud_devicemanagement/docs/LoginProfile.md
index 243dea010..dca031ee1 100644
--- a/backends/pelioncloud_devicemanagement/docs/LoginProfile.md
+++ b/backends/pelioncloud_devicemanagement/docs/LoginProfile.md
@@ -4,6 +4,7 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
+**foreignId** | **String** | The ID of the user in the identity provider's service. | [optional]
**id** | **String** | ID of the identity provider. |
**name** | **String** | Name of the identity provider. | [optional]
**type** | [**TypeEnum**](#TypeEnum) | Identity provider type. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/LogsPage.md b/backends/pelioncloud_devicemanagement/docs/LogsPage.md
new file mode 100644
index 000000000..aa9a43be3
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/LogsPage.md
@@ -0,0 +1,16 @@
+
+# LogsPage
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**after** | **String** | An offset token for current page. | [optional]
+**data** | [**List<Log>**](Log.md) | | [optional]
+**hasMore** | **Boolean** | Indicates whether more results are available. | [optional]
+**limit** | **Integer** | Limit applied on number of device log resource objects retrieved in the page (2-1000). | [optional]
+**object** | **String** | Always `list`. | [optional]
+**order** | **String** | Entry order based on creation time. | [optional]
+**totalCount** | **Integer** | | [optional]
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/ManufacturingFactoryConfiguratorUtilityFcuApi.md b/backends/pelioncloud_devicemanagement/docs/ManufacturingFactoryConfiguratorUtilityFcuApi.md
new file mode 100644
index 000000000..e6bb14b89
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/ManufacturingFactoryConfiguratorUtilityFcuApi.md
@@ -0,0 +1,164 @@
+# ManufacturingFactoryConfiguratorUtilityFcuApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**downloadFactoryTool**](ManufacturingFactoryConfiguratorUtilityFcuApi.md#downloadFactoryTool) | **GET** downloads/fcu/factory_configurator_utility.zip | Download the Factory Configurator Utility archive.
+[**getFactoryToolInfo**](ManufacturingFactoryConfiguratorUtilityFcuApi.md#getFactoryToolInfo) | **GET** downloads/fcu/info | Download information about the Factory Configurator Utility archive.
+[**getFactoryToolReleaseNotes**](ManufacturingFactoryConfiguratorUtilityFcuApi.md#getFactoryToolReleaseNotes) | **GET** downloads/fcu/release_notes | Download Factory Configurator Utility release notes.
+
+
+
+# **downloadFactoryTool**
+> Void downloadFactoryTool()
+
+Download the Factory Configurator Utility archive.
+
+Downloads the Factory Configurator Utility (FCU) archive .zip file for the account ID associated with the access token. <br> **Example:** <br> ``` curl -X GET https://api.us-east-1.mbedcloud.com/downloads/fcu/factory_configurator_utility.zip \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.ManufacturingFactoryConfiguratorUtilityFcuApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+ManufacturingFactoryConfiguratorUtilityFcuApi apiInstance = new ManufacturingFactoryConfiguratorUtilityFcuApi();
+try {
+ Void result = apiInstance.downloadFactoryTool();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling ManufacturingFactoryConfiguratorUtilityFcuApi#downloadFactoryTool");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/zip
+
+
+# **getFactoryToolInfo**
+> ArchiveInfoResponse getFactoryToolInfo()
+
+Download information about the Factory Configurator Utility archive.
+
+Returns information about the Factory Configurator Utility (FCU) archive. <br> **Example:** <br> ``` curl -X GET https://api.us-east-1.mbedcloud.com/downloads/fcu/inf \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.ManufacturingFactoryConfiguratorUtilityFcuApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+ManufacturingFactoryConfiguratorUtilityFcuApi apiInstance = new ManufacturingFactoryConfiguratorUtilityFcuApi();
+try {
+ ArchiveInfoResponse result = apiInstance.getFactoryToolInfo();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling ManufacturingFactoryConfiguratorUtilityFcuApi#getFactoryToolInfo");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**ArchiveInfoResponse**](ArchiveInfoResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getFactoryToolReleaseNotes**
+> Void getFactoryToolReleaseNotes()
+
+Download Factory Configurator Utility release notes.
+
+Downloads the Factory Configurator Utility (FCU) release notes. <br> **Example:** <br> ``` curl -X GET https://api.us-east-1.mbedcloud.com/downloads/fcu/release_notes \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.ManufacturingFactoryConfiguratorUtilityFcuApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+ManufacturingFactoryConfiguratorUtilityFcuApi apiInstance = new ManufacturingFactoryConfiguratorUtilityFcuApi();
+try {
+ Void result = apiInstance.getFactoryToolReleaseNotes();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling ManufacturingFactoryConfiguratorUtilityFcuApi#getFactoryToolReleaseNotes");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: text/markdown ; charset=UTF-8, application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/Metric.md b/backends/pelioncloud_devicemanagement/docs/Metric.md
index 66f55204b..ac0be7aab 100644
--- a/backends/pelioncloud_devicemanagement/docs/Metric.md
+++ b/backends/pelioncloud_devicemanagement/docs/Metric.md
@@ -4,24 +4,24 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**bootstrapsFailed** | **Long** | The number of failed bootstraps the account has performed. Bootstrap is the process of provisioning a Lightweight Machine to Machine Client to a state where it can initiate a management session to a new Lightweight Machine to Machine Server. | [optional]
-**bootstrapsPending** | **Long** | The number of pending bootstraps the account has performed. Bootstrap is the process of provisioning a Lightweight Machine to Machine Client to a state where it can initiate a management session to a new Lightweight Machine to Machine Server. | [optional]
-**bootstrapsSuccessful** | **Long** | The number of successful bootstraps the account has performed. Bootstrap is the process of provisioning a Lightweight Machine to Machine Client to a state where it can initiate a management session to a new Lightweight Machine to Machine Server. | [optional]
-**connectRestApiError** | **Long** | The number of failed [Connect API](/docs/current/service-api-references/device-management-connect.html) requests that have been performed using the account. This metric does not consider the response from the device, it includes only the responses to the HTTP requests used to manage the device. This metric includes only messages handled by the Connect service, it does not include any HTTP errors returned by firewall as result of malformed messages. | [optional]
-**connectRestApiSuccess** | **Long** | The number of successful [Connect API](/docs/current/service-api-references/device-management-connect.html) requests that have been performed using the account. This metric does not consider the response from the device, it includes only the responses to the HTTP requests used to manage the device. | [optional]
-**deletedRegistrations** | **Long** | The number of deleted registrations (deregistrations) linked to the account. Deregistration is the process of removing the device registration from the Device Management Connect registry. The deregistration is usually initiated by the device. Device Management Connect no longer handles requests for a deregistered device. | [optional]
-**deviceObservations** | **Long** | **(Beta)** The number of notifications received by the Device Management Connect service from the devices linked to the account. The device pushes notifications to Device Management Connect when you have successfully subscribed to the device resources using [Connect API](/docs/current/service-api-references/device-management-connect.html) endpoints. | [optional]
-**deviceProxyRequestError** | **Long** | **(Beta)** The number of failed proxy requests from the Device Management Connect service to devices linked to the account. Device Management Connect makes proxy requests to devices when you try to read or write values to device resources using [Connect API](/docs/current/service-api-references/device-management-connect.html) endpoints. | [optional]
-**deviceProxyRequestSuccess** | **Long** | **(Beta)** The number of successful proxy requests from the Device Management Connect service to devices linked to the account. Device Management Connect makes proxy requests to devices when you try to read or write values to device resources using [Connect API](/docs/current/service-api-references/device-management-connect.html) endpoints. | [optional]
-**deviceSubscriptionRequestError** | **Long** | **(Beta)** The number of failed subscription requests from the Device Management Connect service to devices linked to the account. Device Management Connect makes subscription requests to devices when you try to subscribe to a resource path using [Connect API](/docs/current/service-api-references/device-management-connect.html) endpoints. | [optional]
-**deviceSubscriptionRequestSuccess** | **Long** | **(Beta)** The number of successful subscription requests from the Device Management Connect service to devices linked to the account. Device Management Connect makes subscription requests to devices when you try to subscribe to a resource path using [Connect API](/docs/current/service-api-references/device-management-connect.html) endpoints. | [optional]
-**expiredRegistrations** | **Long** | The number of expired registrations linked to the account. Device Management Connect removes the device registrations when the devices cannot update their registration before the expiry of the lifetime. Device Management Connect no longer handles requests for a device whose registration has expired already. | [optional]
-**fullRegistrations** | **Long** | The number of full registrations linked to the account. Full registration is the process of registering a device with Device Management Connect by providing its lifetime and capabilities such as the resource structure.The registered status of the device does not guarantee that the device is active and accessible from Device Management Connect at any point of time. | [optional]
-**handshakesSuccessful** | **Long** | The number of successful TLS handshakes the account has performed. The SSL or TLS handshake enables the SSL or TLS client and server to establish the secret keys with which they communicate. A successful TLS handshake is required for establishing a connection with Device Management Connect for any operaton such as registration, registration update and deregistration. | [optional]
+**bootstrapsFailed** | **Long** | The number of failed bootstraps the account has performed. Bootstrap is the process of provisioning an Lw2M2M client to a state where it can initiate a management session to a new LwM2M server. | [optional]
+**bootstrapsPending** | **Long** | The number of pending bootstraps the account has performed. Bootstrap is the process of provisioning an Lw2M2M client to a state where it can initiate a management session to a new LwM2M server. | [optional]
+**bootstrapsSuccessful** | **Long** | The number of successful bootstraps the account has performed. Bootstrap is the process of provisioning a lightweight machine-to-machine (LwM2M) client to a state where it can initiate a management session to a new LwM2M Server. | [optional]
+**connectRestApiError** | **Long** | The number of failed [Connect API](https://developer.pelion.com/docs/device-management-api/connect/) requests that have been performed using the account. This metric does not consider the response from the device, it includes only the responses to the HTTP requests used to manage the device. This metric includes only messages handled by the Connect service, not any HTTP errors returned by the firewall as a result of incorrect messages. | [optional]
+**connectRestApiSuccess** | **Long** | The number of successful [Connect API](https://developer.pelion.com/docs/device-management-api/connect/) requests that have been performed using the account. This metric does not consider the response from the device, only the responses to the HTTP requests used to manage the device. | [optional]
+**deletedRegistrations** | **Long** | The number of deleted registrations (deregistrations) linked to the account. Deregistration is the process of removing the device registration from the Device Management Connect registry. The deregistration is usually initiated by the device. Device Management Connect no longer handles requests for deregistered devices. | [optional]
+**deviceObservations** | **Long** | **(Beta)** The number of notifications received by the Device Management Connect service from the devices linked to the account. The device pushes notifications to Device Management Connect when you have successfully subscribed to the device resources using [Connect API](https://developer.pelion.com/docs/device-management-api/connect/) endpoints. | [optional]
+**deviceProxyRequestError** | **Long** | **(Beta)** The number of failed proxy requests from the Device Management Connect service to devices linked to the account. Device Management Connect makes proxy requests to devices when you try to read or write values to device resources using [Connect API](https://developer.pelion.com/docs/device-management-api/connect/) endpoints. | [optional]
+**deviceProxyRequestSuccess** | **Long** | **(Beta)** The number of successful proxy requests from the Device Management Connect service to devices linked to the account. Device Management Connect makes proxy requests to devices when you try to read or write values to device resources using [Connect API](https://developer.pelion.com/docs/device-management-api/connect/) endpoints. | [optional]
+**deviceSubscriptionRequestError** | **Long** | **(Beta)** The number of failed subscription requests from the Device Management Connect service to devices linked to the account. Device Management Connect makes subscription requests to devices when you try to subscribe to a resource path using [Connect API](https://developer.pelion.com/docs/device-management-api/connect/) endpoints. | [optional]
+**deviceSubscriptionRequestSuccess** | **Long** | **(Beta)** The number of successful subscription requests from the Device Management Connect service to devices linked to the account. Device Management Connect makes subscription requests to devices when you try to subscribe to a resource path using [Connect API](https://developer.pelion.com/docs/device-management-api/connect/) endpoints. | [optional]
+**expiredRegistrations** | **Long** | The number of expired registrations linked to the account. Device Management Connect removes a registration when the device cannot update its registration before lifetime expiry. Device Management Connect no longer handles requests for devices with already expired registrations. | [optional]
+**fullRegistrations** | **Long** | The number of full registrations linked to the account. Full registration is the process of registering a device with Device Management Connect by providing its lifetime and capabilities, such as resource structure. Device registered status does not guarantee that the device is active and accessible from Device Management Connect at any point of time. | [optional]
+**handshakesSuccessful** | **Long** | The number of successful TLS handshakes the account has performed. The SSL or TLS handshake enables the SSL or TLS client and server to establish secret keys. A successful TLS handshake is required for establishing a connection with Device Management Connect for any operation such as registration, registration update, and deregistration. | [optional]
**id** | **String** | A unique metric ID. | [optional]
**registrationUpdates** | **Long** | The number of registration updates linked to the account. Registration update is the process of updating the registration status with Device Management Connect to update or extend the lifetime of the device. | [optional]
**timestamp** | [**DateTime**](DateTime.md) | UTC time in RFC3339 format. The timestamp is the starting point of the interval for which the data is aggregated. Each interval includes data for the time greater than or equal to the timestamp and less than the next interval's starting point. | [optional]
-**transactions** | **Long** | The number of transaction events from or to devices linked to the account. A transaction is a 512-byte block of data processed by Device Management. It can be either sent by the device (device --> Device Management) or received by the device (Device Management --> device). A transaction does not include IP, TCP or UDP, TLS or DTLS packet overhead. It only contains the packet payload (full CoAP packet including CoAP headers). | [optional]
+**transactions** | **Long** | The number of transaction events from or to devices linked to the account. A transaction is a 512-byte block of data processed by Device Management. It can be either sent by the device (device --> Device Management) or received by the device (Device Management --> device). A transaction does not include IP, TCP or UDP, or TLS or DTLS packet overhead. It contains only the packet payload (full CoAP packet including CoAP headers). | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/NotificationEntryList.md b/backends/pelioncloud_devicemanagement/docs/NotificationEntryList.md
index e1b7ac0d6..ccd45aae9 100644
--- a/backends/pelioncloud_devicemanagement/docs/NotificationEntryList.md
+++ b/backends/pelioncloud_devicemanagement/docs/NotificationEntryList.md
@@ -4,7 +4,7 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**after** | **String** | The entity ID to fetch after the given one. | [optional]
+**after** | **String** | The entity ID to retrieve after the given one. | [optional]
**data** | [**List<NotificationEntry>**](NotificationEntry.md) | A list of entities. |
**hasMore** | **Boolean** | Flag indicating whether there are more results. |
**limit** | **Integer** | The number of results to return, or equal to `total_count`. |
diff --git a/backends/pelioncloud_devicemanagement/docs/PelionToDeviceMessagesCounter.md b/backends/pelioncloud_devicemanagement/docs/PelionToDeviceMessagesCounter.md
new file mode 100644
index 000000000..f72e8f6bc
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/PelionToDeviceMessagesCounter.md
@@ -0,0 +1,12 @@
+
+# PelionToDeviceMessagesCounter
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**proxyRequests** | **Integer** | |
+**subscriptions** | **Integer** | |
+**totalCount** | **Long** | The number of all outbound requests sent to devices. |
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/Presubscription.md b/backends/pelioncloud_devicemanagement/docs/Presubscription.md
index 56572d135..aa20d46c2 100644
--- a/backends/pelioncloud_devicemanagement/docs/Presubscription.md
+++ b/backends/pelioncloud_devicemanagement/docs/Presubscription.md
@@ -4,7 +4,7 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**endpointName** | **String** | The device ID. | [optional]
+**endpointName** | **String** | Device Management device ID. | [optional]
**endpointType** | **String** | | [optional]
**resourcePath** | **List<String>** | | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/QuotaUsageReport.md b/backends/pelioncloud_devicemanagement/docs/QuotaUsageReport.md
index ebc0504d6..3b23aaa5d 100644
--- a/backends/pelioncloud_devicemanagement/docs/QuotaUsageReport.md
+++ b/backends/pelioncloud_devicemanagement/docs/QuotaUsageReport.md
@@ -20,6 +20,7 @@ RESERVATION_TERMINATION | "reservation_termination"
PACKAGE_RENEWAL | "package_renewal"
PACKAGE_CREATION | "package_creation"
PACKAGE_TERMINATION | "package_termination"
+PACKAGE_TOKENS_EDIT | "package_tokens_edit"
diff --git a/backends/pelioncloud_devicemanagement/docs/RegisterWebsocketChannel.md b/backends/pelioncloud_devicemanagement/docs/RegisterWebsocketChannel.md
index e70e22c48..08492a0fb 100644
--- a/backends/pelioncloud_devicemanagement/docs/RegisterWebsocketChannel.md
+++ b/backends/pelioncloud_devicemanagement/docs/RegisterWebsocketChannel.md
@@ -4,7 +4,7 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**serialization** | **Object** | Serialization configuration for a channel | [optional]
+**serialization** | [**SerializationConfigData**](SerializationConfigData.md) | | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/ReportAccountContactInfo.md b/backends/pelioncloud_devicemanagement/docs/ReportAccountContactInfo.md
index dc97a55a9..2edeea301 100644
--- a/backends/pelioncloud_devicemanagement/docs/ReportAccountContactInfo.md
+++ b/backends/pelioncloud_devicemanagement/docs/ReportAccountContactInfo.md
@@ -6,10 +6,13 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**addressLine1** | **String** | | [optional]
**addressLine2** | **String** | | [optional]
+**alias** | **String** | | [optional]
+**businessModel** | [**BusinessModelEnum**](#BusinessModelEnum) | The business model selected for the account to generate the billing reports. | [optional]
**city** | **String** | | [optional]
**company** | **String** | |
**contact** | **String** | | [optional]
**country** | **String** | | [optional]
+**customerSubtenantId** | **String** | Account tenant ID, valid only for tenants. | [optional]
**email** | **String** | | [optional]
**id** | **String** | Account ID. |
**phoneNumber** | **String** | | [optional]
@@ -17,4 +20,12 @@ Name | Type | Description | Notes
**state** | **String** | | [optional]
+
+## Enum: BusinessModelEnum
+Name | Value
+---- | -----
+ACTIVE_DEVICE_BUSINESS_MODEL | "active_device_business_model"
+API_CALLS_1_BUSINESS_MODEL | "api_calls_1_business_model"
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/ReportBillingData.md b/backends/pelioncloud_devicemanagement/docs/ReportBillingData.md
index 6b6244490..397cf9807 100644
--- a/backends/pelioncloud_devicemanagement/docs/ReportBillingData.md
+++ b/backends/pelioncloud_devicemanagement/docs/ReportBillingData.md
@@ -4,12 +4,17 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**activeDevices** | **Long** | |
-**firmwareUpdates** | **Long** | |
+**activeDevices** | **Integer** | |
+**deviceToPelionMessages** | [**DeviceToPelionMessagesCounter**](DeviceToPelionMessagesCounter.md) | | [optional]
+**firmwareUpdates** | **Integer** | |
**generated** | [**DateTime**](DateTime.md) | Billing report generated time in RFC3339 date-time with millisecond accuracy and UTC time zone. |
+**pelionToDeviceMessages** | [**PelionToDeviceMessagesCounter**](PelionToDeviceMessagesCounter.md) | | [optional]
+**pelionToWebappNotifications** | **Integer** | | [optional]
**periodEnd** | [**DateTime**](DateTime.md) | Billing report end time in RFC3339 date-time with millisecond accuracy and UTC time zone. |
**periodStart** | [**DateTime**](DateTime.md) | Billing report start time in RFC3339 date-time with millisecond accuracy and UTC time zone. |
-**sdaTokens** | **Long** | |
+**restApiRequestsWithApiKeyToken** | **Integer** | | [optional]
+**restApiRequestsWithUserToken** | **Integer** | | [optional]
+**sdaTokens** | **Integer** | |
diff --git a/backends/pelioncloud_devicemanagement/docs/ReportResponse.md b/backends/pelioncloud_devicemanagement/docs/ReportResponse.md
index 76d0ce93f..8c9931726 100644
--- a/backends/pelioncloud_devicemanagement/docs/ReportResponse.md
+++ b/backends/pelioncloud_devicemanagement/docs/ReportResponse.md
@@ -5,13 +5,13 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**account** | [**ReportAccountContactInfo**](ReportAccountContactInfo.md) | Account contact information. |
-**aggregated** | [**ReportBillingData**](ReportBillingData.md) | Aggregated report billing data including all subtenant accounts, if any. |
+**aggregated** | [**ReportBillingData**](ReportBillingData.md) | Aggregated report billing data including all tenant accounts, if any. | [optional]
**billingData** | [**ReportBillingData**](ReportBillingData.md) | Report billing data. |
**id** | **String** | Billing report ID. |
**month** | **String** | Month of requested billing report. |
**object** | [**ObjectEnum**](#ObjectEnum) | Billing report response object. Always set to `billing-report`. |
-**servicePackage** | [**ServicePackageReport**](ServicePackageReport.md) | Report service package. | [optional]
-**subtenants** | [**List<SubtenantAccountReport>**](SubtenantAccountReport.md) | List of billing reports for subtenant accounts. Empty list if account does not have any subtenant account. |
+**servicePackage** | [**ServicePackageReport**](ServicePackageReport.md) | Service package report. | [optional]
+**subtenants** | [**List<SubtenantAccountReport>**](SubtenantAccountReport.md) | List of billing reports for tenant accounts. Empty list if account does not have any tenant account. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/Resource.md b/backends/pelioncloud_devicemanagement/docs/Resource.md
index 1520d2d80..e88b5888c 100644
--- a/backends/pelioncloud_devicemanagement/docs/Resource.md
+++ b/backends/pelioncloud_devicemanagement/docs/Resource.md
@@ -5,9 +5,9 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**obs** | **Boolean** | 'Determines whether you can subscribe to changes for this resource. It can have values `true` or `false`.' | [optional]
-**rt** | **String** | Application-specific resource type that describes this resource. It is created by the [client side application](../connecting/resource-setup-in-device-management-client.html). Not meant to be a human-readable name for the resource. Multiple resource types may be included, separated by a space. | [optional]
-**type** | **String** | The content type of the resource. We recommend you use the **resource types** listed in the [LwM2M specification](http://technical.openmobilealliance.org/Technical/technical-information/omna/lightweight-m2m-lwm2m-object-registry). | [optional]
-**uri** | **String** | The resource URL. |
+**rt** | **String** | Application-specific resource type that describes this resource, created by the [client application](https://developer.pelion.com/docs/device-management/current/resources/resource-setup-in-device-management-client.html). Not meant to be a human-readable name for the resource. Multiple resource types may be included, separated by a space. | [optional]
+**type** | **String** | The content type of the resource. We recommend you use the content types listed in the [LwM2M specification](http://www.openmobilealliance.org/wp/omna/lwm2m/lwm2mregistry.html). | [optional]
+**uri** | **String** | The resource URL. This can be the path to: - An object; for example, `3303`. - An object instance; for example `3303/0`. - A resource; for example `3303/0/5602`. For more information about the Device Management resource model, please see the [Device Management documentation](https://developer.pelion.com/docs/device-management/current/resources/resource-model.html). |
diff --git a/backends/pelioncloud_devicemanagement/docs/ResourceArray.md b/backends/pelioncloud_devicemanagement/docs/ResourceArray.md
new file mode 100644
index 000000000..fc7ee4491
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/ResourceArray.md
@@ -0,0 +1,9 @@
+
+# ResourceArray
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/ResourcesData.md b/backends/pelioncloud_devicemanagement/docs/ResourcesData.md
index 652799361..04f85ed9e 100644
--- a/backends/pelioncloud_devicemanagement/docs/ResourcesData.md
+++ b/backends/pelioncloud_devicemanagement/docs/ResourcesData.md
@@ -8,7 +8,7 @@ Name | Type | Description | Notes
**_if** | **String** | Interface description that defines a name or URI that indicates how to interact with the target resource. It describes a generic interface type, such as a 'sensor'. | [optional]
**obs** | **Boolean** | Whether the resource is observable (true/false). | [optional]
**path** | **String** | Resource's URI path. | [optional]
-**rt** | **String** | Application-specific resource type that describes this resource. It is created by the [client side application](../connecting/resource-setup-in-device-management-client.html). Not meant to be a human-readable name for the resource. Multiple resource types may be included, separated by a space. | [optional]
+**rt** | **String** | Application-specific resource type that describes this resource. It is created by the [client side application](https://developer.pelion.com/docs/device-management/current/resources/resource-setup-in-device-management-client.html). Not meant to be a human-readable name for the resource. Multiple resource types may be included, separated by a space. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentityCertificateIssuerConfigurationsApi.md b/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentityCertificateIssuerConfigurationsApi.md
new file mode 100644
index 000000000..8b98f4608
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentityCertificateIssuerConfigurationsApi.md
@@ -0,0 +1,406 @@
+# SecurityAndIdentityCertificateIssuerConfigurationsApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**createCertificateIssuerConfig**](SecurityAndIdentityCertificateIssuerConfigurationsApi.md#createCertificateIssuerConfig) | **POST** v3/certificate-issuer-configurations | Create certificate issuer configuration.
+[**deleteCertificateIssuerConfigByID**](SecurityAndIdentityCertificateIssuerConfigurationsApi.md#deleteCertificateIssuerConfigByID) | **DELETE** v3/certificate-issuer-configurations/{certificate-issuer-configuration-id} | Delete certificate issuer configuration.
+[**getCertificateIssuerConfig**](SecurityAndIdentityCertificateIssuerConfigurationsApi.md#getCertificateIssuerConfig) | **GET** v3/certificate-issuer-configurations/lwm2m | Get certificate issuer configuration.
+[**getCertificateIssuerConfigByID**](SecurityAndIdentityCertificateIssuerConfigurationsApi.md#getCertificateIssuerConfigByID) | **GET** v3/certificate-issuer-configurations/{certificate-issuer-configuration-id} | Get certificate issuer configuration.
+[**getCertificateIssuerConfigs**](SecurityAndIdentityCertificateIssuerConfigurationsApi.md#getCertificateIssuerConfigs) | **GET** v3/certificate-issuer-configurations | Get certificate issuer configurations.
+[**updateCertificateIssuerConfig**](SecurityAndIdentityCertificateIssuerConfigurationsApi.md#updateCertificateIssuerConfig) | **PUT** v3/certificate-issuer-configurations/lwm2m | Update certificate issuer configuration.
+[**updateCertificateIssuerConfigByID**](SecurityAndIdentityCertificateIssuerConfigurationsApi.md#updateCertificateIssuerConfigByID) | **PUT** v3/certificate-issuer-configurations/{certificate-issuer-configuration-id} | Update certificate issuer configuration.
+
+
+
+# **createCertificateIssuerConfig**
+> CertificateIssuerConfigResponse createCertificateIssuerConfig(createCertificateIssuerConfig)
+
+Create certificate issuer configuration.
+
+Configure the certificate issuer to use when creating device custom certificates. <br> **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/certificate-issuer-configurations \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json;charset=UTF-8' \\ -d '{ \"reference\": \"customer.dlms\", \"certificate_issuer_id\": \"01621a36719d507b9d48a91b00000000\" }' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityCertificateIssuerConfigurationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityCertificateIssuerConfigurationsApi apiInstance = new SecurityAndIdentityCertificateIssuerConfigurationsApi();
+CreateCertificateIssuerConfig createCertificateIssuerConfig = new CreateCertificateIssuerConfig(); // CreateCertificateIssuerConfig | Certificate issuer configuration request.
+try {
+ CertificateIssuerConfigResponse result = apiInstance.createCertificateIssuerConfig(createCertificateIssuerConfig);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityCertificateIssuerConfigurationsApi#createCertificateIssuerConfig");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **createCertificateIssuerConfig** | [**CreateCertificateIssuerConfig**](CreateCertificateIssuerConfig.md)| Certificate issuer configuration request. |
+
+### Return type
+
+[**CertificateIssuerConfigResponse**](CertificateIssuerConfigResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **deleteCertificateIssuerConfigByID**
+> Void deleteCertificateIssuerConfigByID(certificateIssuerConfigurationId)
+
+Delete certificate issuer configuration.
+
+Delete certificate issuer configuration. You can only delete custom certificate configurations.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityCertificateIssuerConfigurationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityCertificateIssuerConfigurationsApi apiInstance = new SecurityAndIdentityCertificateIssuerConfigurationsApi();
+String certificateIssuerConfigurationId = "certificateIssuerConfigurationId_example"; // String | Certificate issuer ID configuration.
+try {
+ Void result = apiInstance.deleteCertificateIssuerConfigByID(certificateIssuerConfigurationId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityCertificateIssuerConfigurationsApi#deleteCertificateIssuerConfigByID");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **certificateIssuerConfigurationId** | **String**| Certificate issuer ID configuration. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getCertificateIssuerConfig**
+> CertificateIssuerConfigResponse getCertificateIssuerConfig()
+
+Get certificate issuer configuration.
+
+Provides the configured certificate issuer used when creating device certificates for LwM2M.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityCertificateIssuerConfigurationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityCertificateIssuerConfigurationsApi apiInstance = new SecurityAndIdentityCertificateIssuerConfigurationsApi();
+try {
+ CertificateIssuerConfigResponse result = apiInstance.getCertificateIssuerConfig();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityCertificateIssuerConfigurationsApi#getCertificateIssuerConfig");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**CertificateIssuerConfigResponse**](CertificateIssuerConfigResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getCertificateIssuerConfigByID**
+> CertificateIssuerConfigResponse getCertificateIssuerConfigByID(certificateIssuerConfigurationId)
+
+Get certificate issuer configuration.
+
+Provides the configured certificate issuer.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityCertificateIssuerConfigurationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityCertificateIssuerConfigurationsApi apiInstance = new SecurityAndIdentityCertificateIssuerConfigurationsApi();
+String certificateIssuerConfigurationId = "certificateIssuerConfigurationId_example"; // String | Certificate issuer ID configuration.
+try {
+ CertificateIssuerConfigResponse result = apiInstance.getCertificateIssuerConfigByID(certificateIssuerConfigurationId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityCertificateIssuerConfigurationsApi#getCertificateIssuerConfigByID");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **certificateIssuerConfigurationId** | **String**| Certificate issuer ID configuration. |
+
+### Return type
+
+[**CertificateIssuerConfigResponse**](CertificateIssuerConfigResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getCertificateIssuerConfigs**
+> CertificateIssuerConfigListResponse getCertificateIssuerConfigs(limit, order, after, include, referenceEq)
+
+Get certificate issuer configurations.
+
+Get certificate issuer configurations, optionally filtered by reference. <br> **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/certificate-issuer-configurations \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json;charset=UTF-8' \\ ``` <br> ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/certificate-issuer-configurations?reference__eq=dlms \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json;charset=UTF-8' \\ ``` **Note:** This endpoint does not implement pagination, and therefore ignores list control parameters such as `limit` or `after`.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityCertificateIssuerConfigurationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityCertificateIssuerConfigurationsApi apiInstance = new SecurityAndIdentityCertificateIssuerConfigurationsApi();
+Integer limit = 56; // Integer | The number of results to return (2-1000). Values outside of this range are set to the closest limit.
+String order = "order_example"; // String | Record order. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The ID of the item after which to retrieve the next page.
+String include = "include_example"; // String | Comma-separated list of data fields to return. Currently supported: `total_count`.
+String referenceEq = "referenceEq_example"; // String | The certificate name to which the certificate issuer configuration applies.
+try {
+ CertificateIssuerConfigListResponse result = apiInstance.getCertificateIssuerConfigs(limit, order, after, include, referenceEq);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityCertificateIssuerConfigurationsApi#getCertificateIssuerConfigs");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **limit** | **Integer**| The number of results to return (2-1000). Values outside of this range are set to the closest limit. | [optional]
+ **order** | **String**| Record order. Acceptable values: ASC, DESC. Default: ASC. | [optional]
+ **after** | **String**| The ID of the item after which to retrieve the next page. | [optional]
+ **include** | **String**| Comma-separated list of data fields to return. Currently supported: `total_count`. | [optional]
+ **referenceEq** | **String**| The certificate name to which the certificate issuer configuration applies. | [optional]
+
+### Return type
+
+[**CertificateIssuerConfigListResponse**](CertificateIssuerConfigListResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **updateCertificateIssuerConfig**
+> CertificateIssuerConfigResponse updateCertificateIssuerConfig(certificateIssuerConfigRequest)
+
+Update certificate issuer configuration.
+
+Configure the certificate issuer used when creating device certificates for LwM2M. <br> **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/certificate-issuer-configurations/lwm2m \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json;charset=UTF-8' \\ -d '{ \"certificate_issuer_id\": \"01621a36719d507b9d48a91b00000000\" }' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityCertificateIssuerConfigurationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityCertificateIssuerConfigurationsApi apiInstance = new SecurityAndIdentityCertificateIssuerConfigurationsApi();
+CertificateIssuerConfigRequest certificateIssuerConfigRequest = new CertificateIssuerConfigRequest(); // CertificateIssuerConfigRequest | Certificate Issuer Configuration Request
+try {
+ CertificateIssuerConfigResponse result = apiInstance.updateCertificateIssuerConfig(certificateIssuerConfigRequest);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityCertificateIssuerConfigurationsApi#updateCertificateIssuerConfig");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **certificateIssuerConfigRequest** | [**CertificateIssuerConfigRequest**](CertificateIssuerConfigRequest.md)| Certificate Issuer Configuration Request |
+
+### Return type
+
+[**CertificateIssuerConfigResponse**](CertificateIssuerConfigResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **updateCertificateIssuerConfigByID**
+> CertificateIssuerConfigResponse updateCertificateIssuerConfigByID(certificateIssuerConfigRequest, certificateIssuerConfigurationId)
+
+Update certificate issuer configuration.
+
+Update certificate issuer configuration.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityCertificateIssuerConfigurationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityCertificateIssuerConfigurationsApi apiInstance = new SecurityAndIdentityCertificateIssuerConfigurationsApi();
+CertificateIssuerConfigRequest certificateIssuerConfigRequest = new CertificateIssuerConfigRequest(); // CertificateIssuerConfigRequest | Certificate issuer configuration request.
+String certificateIssuerConfigurationId = "certificateIssuerConfigurationId_example"; // String | Certificate issuer ID configuration.
+try {
+ CertificateIssuerConfigResponse result = apiInstance.updateCertificateIssuerConfigByID(certificateIssuerConfigRequest, certificateIssuerConfigurationId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityCertificateIssuerConfigurationsApi#updateCertificateIssuerConfigByID");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **certificateIssuerConfigRequest** | [**CertificateIssuerConfigRequest**](CertificateIssuerConfigRequest.md)| Certificate issuer configuration request. |
+ **certificateIssuerConfigurationId** | **String**| Certificate issuer ID configuration. |
+
+### Return type
+
+[**CertificateIssuerConfigResponse**](CertificateIssuerConfigResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentityCertificateIssuersApi.md b/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentityCertificateIssuersApi.md
new file mode 100644
index 000000000..5f7ba9f89
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentityCertificateIssuersApi.md
@@ -0,0 +1,350 @@
+# SecurityAndIdentityCertificateIssuersApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**createCertificateIssuer**](SecurityAndIdentityCertificateIssuersApi.md#createCertificateIssuer) | **POST** v3/certificate-issuers | Create certificate issuer.
+[**deleteCertificateIssuer**](SecurityAndIdentityCertificateIssuersApi.md#deleteCertificateIssuer) | **DELETE** v3/certificate-issuers/{certificate-issuer-id} | Delete certificate issuer.
+[**getCertificateIssuer**](SecurityAndIdentityCertificateIssuersApi.md#getCertificateIssuer) | **GET** v3/certificate-issuers/{certificate-issuer-id} | Get certificate issuer by ID.
+[**getCertificateIssuers**](SecurityAndIdentityCertificateIssuersApi.md#getCertificateIssuers) | **GET** v3/certificate-issuers | Get certificate issuers list.
+[**updateCertificateIssuer**](SecurityAndIdentityCertificateIssuersApi.md#updateCertificateIssuer) | **PUT** v3/certificate-issuers/{certificate-issuer-id} | Update certificate issuer.
+[**verifyCertificateIssuer**](SecurityAndIdentityCertificateIssuersApi.md#verifyCertificateIssuer) | **POST** v3/certificate-issuers/{certificate-issuer-id}/verify | Verify certificate issuer.
+
+
+
+# **createCertificateIssuer**
+> CertificateIssuerInfo createCertificateIssuer(certificateIssuerRequest)
+
+Create certificate issuer.
+
+Create a certificate issuer. <br> The maximum number of issuers is limited to 20 per account. <br> You can create multiple certificate issuers of the same type, provided they have different names. This allows verification of the certificate issuer configuration before activation. <br> **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/certificate-issuers \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json;charset=UTF-8' \\ -d '{ \"issuer_type\": \"GLOBAL_SIGN\", \"name\": \"GS Issuer\", \"description\": \"Sample GlobalSign certificate issuer\", \"issuer_attributes\": null, \"issuer_credentials\": { \"api_key\": \"e510e289e6cd8947\", \"api_secret\": \"a477a8393d17a55ecb2ba6a61f58feb84770b621\", \"client_certificate\": \"-----BEGIN CERTIFICATE-----MIIC7zCCAdegAwIBAgIJANTlU4x5S74VMA0GCSqGSIb3DQEBCwUAMA4xDDAKBgNVBAoMA0FybTAeFw0xODAzMTExMzE5MTFaFw0xOTAzMTExMzE5MTFaMA4xDDAKBgNVBAoMA0FybTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJWLStsVMJULZtxdieK9qocM4ymDXMaAusmd9TZLzBgznKQe/CW2yxyA8C8K5e6MmvMYGeKDd4Lkw/ezOj2OsUj2xzNIltUxpGi/GhsNYiN/khNJa/Y1SllLoihJAPm/xbMywOBRu/dM88PiJsNZccOk0I8DYvvyAs9wCTkbKLnfHygl98DCRqXw7nBCplU6F03qpUd/4BUtMtugyqt7yboGH+4YewnUh4Yh4QNOJIvE93Ob++eKjO3pIOYEhQmUxzOLaLNuWXlv2l1WuN281hUP4XBcV8mCzRQfTBBDYTWt+5BEWoLOUkXjW0Um6EAaN3usph1IKDEH6Ia5VHP4Pj0CAwEAAaNQME4wHQYDVR0OBBYEFLsfYZxFcQTjPJKYMjHI2In316fmMB8GA1UdIwQYMBaAFLsfYZxFcQTjPJKYMjHI2In316fmMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAFl08GFsIkkUs6M7QgCWmsnwP6PtD8V87wM1GAqQQlOOeztaeRR2TEOeYiKRZQugYszJ/FVfVp4ggqzepJMn6UZ42j5nmSJs+6t79i23QAzX1zNQ354lr/t7kt3fMdhuL3AP0oZGzdy+EnXXiWeAD22UwzvVmLt38ypJIl+pmTsx9jJy4PN7yoRgtP9k+50m3X6oDxVruehC/JPSeTvEhqyLW3fLcG6IoJMX3vIwfO9uXbFJumTowQeViNJJ9duWvD2KBXn/muOOBe97TPuvAms1gOtMmmPT9/jpo9b4+NsfFiAN6bMici81aIKZzLC+lLGOUmR2fFJyM5OsVLxKsko=-----END CERTIFICATE-----\", \"private_key\":\"-----BEGIN RSA PRIVATE KEY-----\\nProc-Type: 4,ENCRYPTED\\nDEK-Info: DES-EDE3-CBC,CCAC26A4133947CB\\n\\np3KJ4FI3wcz3I0MtiLkrznkjWFvprVmoNywySUGb5IqZViJZqCMEsyU9a9iDsSfP\\nZ07cg9GviV21WYIPSxZOQrpy1g1VWILzFnH+J6z8dSH4mxXh0PwdOzYgAeqkrIVM\\nJ7KRm6t222dZFjjXK3eEcLmBLGo29XwVJxKHx+l4++gU1LZmeHZR5M8fJ4jejUly\\n7sqzPlmRF0N3I4lwKVj+PfQTVz43QoCnpxOjuSEL4liBrc2agY2xH1O0PFyHimz9\\n3XM9HR/iuPHW0N2D+NPjXlWKacerupH9d4i9IYIagzB+HTgej8limdo03GmmxcZ6\\nYNa58n5yQSaqu0TPRU9DsrKeGjadHTlZQGdzfq1SWsROCnHLrXFKE2ozIG3+hxA5\\nujBF/QWpX5+inXUwDJhBxp8isHbPEnBEUUd6ZRzCTjvN0jaUti5B9yFhO2G6mbE8\\nCvhyzQK8oJqsjZXnlcpPf95LP+9XbcCDjLSIaWJstzXO9tPiv6+x1MVWmivtRHcC\\nSTzpx8jAGCiG6ejLqWB87ZXiZm7ujlCBheHSf5RHwNHhUvoP2JEYalDDRxjcDMSx\\n4uV42Np4yJlIQEDlGHcBlXoL7vEukFpuWgkYdpcZy/Ou9qz8mXrpLcu8C8MhLmSC\\nixGoR5iRhV7cxoHLyuCzj87eYEA73Xu238DQorSEEuiVFnLzQ2+PJMs4qoI14q/L\\notlBDz+Ko6DrU/EZROYmiqMkLKXR2sx9zNAJwPYRs6nSH08tZ3dwqzZbgtP3Wazi\\nhLWHt5/En7wQRA5a+/dDEHXSoLvvSQ9jvhclhWf+eCYuq2eH+g54oyJGRSY+8GV7\\nujhLxkzl/3OZdhZPWoz4U13KpbSTcNWu5Y7oGDoabw19UbvqmLf1PJkpDH/tQgzB\\nxYtsLBRUcofpYoeIiIxfAA4do5WilJc8xqrGhkE4WcHfY24HXAiOvsjbxV+BRprX\\n1jtgJpV/9nJESMap+8PxipGUFRGjB83/uwJaa6mLftEKflX8i4MZ+HnqraXERsqA\\nWRUcDHIWmFfpzIB3iNuxawVvPH8NdCSPmQ9qTb8Cozl0AuOK2E9S+ke8oiYQScWR\\nLdu+zhej7GjuQ9R+Ub+wPWqvOA5qLXejqnCexVScDUuN+z9JWM3N2FG1MwxhAzhP\\ndEfoQHoBn6uyOmrVGP6fosV3chqhPoec42KeOAm1xDvx692isaIy1jPgIyPxeqhm\\n2Tw4E+02R7dlP8Ljf7JzfLm4oKpWHWlcHeqg24x6lY/wXU1RBcWaTa0AQUwoGm2m\\nIQCPfIqOEv/QC2HpO7SVCYkl65KwR0oTd1AzYxdxEq3xHQbh69EL0FGZPVxVCPI+\\nhEAyifKy1/tm3l91Rf/kGpHY7nIQKCXH49tmFwix8gke2nZJmRgX7/zAdMOAKeKH\\nAaIl4nQtv14EbaasMgnn9qgaDYnWzaReEob2QlQ/WYlTor61+KFpGtcf9jAkgudT\\n2op+4CF7wT2+aTXdtkVWfmv++iB8GnlqZdxLvyG1cTYjjYHVFbMSWQnxzQqiE2ms\\nQgp+byjWCumpsWTMdTO+d9NkDOo80vDpaRxEgebmhJ0MbX+eFjBgVg==\\n-----END RSA PRIVATE KEY-----\", \"passphrase\": \"helloworld\" } }' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityCertificateIssuersApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityCertificateIssuersApi apiInstance = new SecurityAndIdentityCertificateIssuersApi();
+CertificateIssuerRequest certificateIssuerRequest = new CertificateIssuerRequest(); // CertificateIssuerRequest | Certificate issuer request.
+try {
+ CertificateIssuerInfo result = apiInstance.createCertificateIssuer(certificateIssuerRequest);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityCertificateIssuersApi#createCertificateIssuer");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **certificateIssuerRequest** | [**CertificateIssuerRequest**](CertificateIssuerRequest.md)| Certificate issuer request. |
+
+### Return type
+
+[**CertificateIssuerInfo**](CertificateIssuerInfo.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **deleteCertificateIssuer**
+> Void deleteCertificateIssuer(certificateIssuerId)
+
+Delete certificate issuer.
+
+Delete a certificate issuer by ID. <br> **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/certificate-issuers/0162155dc77d507b9d48a91b00000000 \\ -H 'Authorization: Bearer <access_key>' \\ ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityCertificateIssuersApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityCertificateIssuersApi apiInstance = new SecurityAndIdentityCertificateIssuersApi();
+String certificateIssuerId = "certificateIssuerId_example"; // String | Certificate issuer ID. An active certificate issuer cannot be deleted.
+try {
+ Void result = apiInstance.deleteCertificateIssuer(certificateIssuerId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityCertificateIssuersApi#deleteCertificateIssuer");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **certificateIssuerId** | **String**| Certificate issuer ID. An active certificate issuer cannot be deleted. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getCertificateIssuer**
+> CertificateIssuerInfo getCertificateIssuer(certificateIssuerId)
+
+Get certificate issuer by ID.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityCertificateIssuersApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityCertificateIssuersApi apiInstance = new SecurityAndIdentityCertificateIssuersApi();
+String certificateIssuerId = "certificateIssuerId_example"; // String | Certificate issuer ID.
+try {
+ CertificateIssuerInfo result = apiInstance.getCertificateIssuer(certificateIssuerId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityCertificateIssuersApi#getCertificateIssuer");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **certificateIssuerId** | **String**| Certificate issuer ID. |
+
+### Return type
+
+[**CertificateIssuerInfo**](CertificateIssuerInfo.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getCertificateIssuers**
+> CertificateIssuerInfoListResponse getCertificateIssuers(limit, order, after, include)
+
+Get certificate issuers list.
+
+**Note:** This endpoint does not use pagination, and therefore ignores list control parameters such as `limit` or `after`.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityCertificateIssuersApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityCertificateIssuersApi apiInstance = new SecurityAndIdentityCertificateIssuersApi();
+Integer limit = 56; // Integer | The number of results to return (2-1000). Values outside of this range are set to the closest limit.
+String order = "order_example"; // String | Record order. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The ID of the item after which to retrieve the next page.
+String include = "include_example"; // String | Comma-separated list of data fields to return. Currently supported: `total_count`.
+try {
+ CertificateIssuerInfoListResponse result = apiInstance.getCertificateIssuers(limit, order, after, include);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityCertificateIssuersApi#getCertificateIssuers");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **limit** | **Integer**| The number of results to return (2-1000). Values outside of this range are set to the closest limit. | [optional]
+ **order** | **String**| Record order. Acceptable values: ASC, DESC. Default: ASC. | [optional]
+ **after** | **String**| The ID of the item after which to retrieve the next page. | [optional]
+ **include** | **String**| Comma-separated list of data fields to return. Currently supported: `total_count`. | [optional]
+
+### Return type
+
+[**CertificateIssuerInfoListResponse**](CertificateIssuerInfoListResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **updateCertificateIssuer**
+> CertificateIssuerInfo updateCertificateIssuer(certificateIssuerId, certificateIssuerUpdateRequest)
+
+Update certificate issuer.
+
+Update a certificate issuer. <br> **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/certificate-issuers/01621560be51507b9d48a91b00000000 \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json;charset=UTF-8' \\ -d '{ \"description\": \"Sample GlobalSign certificate issuer - updated.\", \"name\": \"GlobalSign Issuer\" }' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityCertificateIssuersApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityCertificateIssuersApi apiInstance = new SecurityAndIdentityCertificateIssuersApi();
+String certificateIssuerId = "certificateIssuerId_example"; // String | Certificate issuer ID.
+CertificateIssuerUpdateRequest certificateIssuerUpdateRequest = new CertificateIssuerUpdateRequest(); // CertificateIssuerUpdateRequest | Certificate issuer update request.
+try {
+ CertificateIssuerInfo result = apiInstance.updateCertificateIssuer(certificateIssuerId, certificateIssuerUpdateRequest);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityCertificateIssuersApi#updateCertificateIssuer");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **certificateIssuerId** | **String**| Certificate issuer ID. |
+ **certificateIssuerUpdateRequest** | [**CertificateIssuerUpdateRequest**](CertificateIssuerUpdateRequest.md)| Certificate issuer update request. |
+
+### Return type
+
+[**CertificateIssuerInfo**](CertificateIssuerInfo.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **verifyCertificateIssuer**
+> CertificateIssuerVerifyResponse verifyCertificateIssuer(certificateIssuerId)
+
+Verify certificate issuer.
+
+Validates the certificate issuer by sending a signing request for a test certificate. This should be done before the configuration is made active. <br> **Note:** The API requests the 3rd party CA to sign a test certificate. For some 3rd party CAs, this operation may use the account quota. <br> **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/certificate-issuers/01621a36719d507b9d48a91b00000000/verify \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json;charset=UTF-8' \\ ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityCertificateIssuersApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityCertificateIssuersApi apiInstance = new SecurityAndIdentityCertificateIssuersApi();
+String certificateIssuerId = "certificateIssuerId_example"; // String | Certificate issuer ID.
+try {
+ CertificateIssuerVerifyResponse result = apiInstance.verifyCertificateIssuer(certificateIssuerId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityCertificateIssuersApi#verifyCertificateIssuer");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **certificateIssuerId** | **String**| Certificate issuer ID. |
+
+### Return type
+
+[**CertificateIssuerVerifyResponse**](CertificateIssuerVerifyResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentityCertificatesApi.md b/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentityCertificatesApi.md
new file mode 100644
index 000000000..183db028c
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentityCertificatesApi.md
@@ -0,0 +1,320 @@
+# SecurityAndIdentityCertificatesApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**addCertificate**](SecurityAndIdentityCertificatesApi.md#addCertificate) | **POST** v3/trusted-certificates | Upload a new trusted certificate.
+[**deleteCertificate**](SecurityAndIdentityCertificatesApi.md#deleteCertificate) | **DELETE** v3/trusted-certificates/{cert_id} | Delete a trusted certificate by ID.
+[**getAllCertificates**](SecurityAndIdentityCertificatesApi.md#getAllCertificates) | **GET** v3/trusted-certificates | Get all trusted certificates.
+[**getCertificate**](SecurityAndIdentityCertificatesApi.md#getCertificate) | **GET** v3/trusted-certificates/{cert_id} | Get a trusted certificate.
+[**updateCertificate**](SecurityAndIdentityCertificatesApi.md#updateCertificate) | **PUT** v3/trusted-certificates/{cert_id} | Update trusted certificate.
+
+
+
+# **addCertificate**
+> TrustedCertificateResp addCertificate(body)
+
+Upload a new trusted certificate.
+
+Upload new trusted certificates. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/trusted-certificates \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d {\"name\": \"myCert1\", \"description\": \"very important cert\", \"certificate\": \"certificate_data\", \"service\": \"lwm2m\"} ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityCertificatesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityCertificatesApi apiInstance = new SecurityAndIdentityCertificatesApi();
+TrustedCertificateReq body = new TrustedCertificateReq(); // TrustedCertificateReq | A trusted certificate object with attributes.
+try {
+ TrustedCertificateResp result = apiInstance.addCertificate(body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityCertificatesApi#addCertificate");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**TrustedCertificateReq**](TrustedCertificateReq.md)| A trusted certificate object with attributes. |
+
+### Return type
+
+[**TrustedCertificateResp**](TrustedCertificateResp.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+
+# **deleteCertificate**
+> Void deleteCertificate(certId)
+
+Delete a trusted certificate by ID.
+
+Delete a trusted certificate. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/trusted-certificates/{cert_id} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityCertificatesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityCertificatesApi apiInstance = new SecurityAndIdentityCertificatesApi();
+String certId = "certId_example"; // String | The ID of the trusted certificate to delete.
+try {
+ Void result = apiInstance.deleteCertificate(certId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityCertificatesApi#deleteCertificate");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **certId** | **String**| The ID of the trusted certificate to delete. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getAllCertificates**
+> TrustedCertificateRespList getAllCertificates(limit, after, order, include, nameEq, serviceEq, expireEq, deviceExecutionModeEq, deviceExecutionModeNeq, ownerEq, enrollmentModeEq, statusEq, issuerLike, subjectLike, certificateFingerprintEq, validEq)
+
+Get all trusted certificates.
+
+Retrieve an array of trusted certificates. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/trusted-certificates \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityCertificatesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityCertificatesApi apiInstance = new SecurityAndIdentityCertificatesApi();
+Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
+String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
+String nameEq = "nameEq_example"; // String | Filter for certificate name.
+String serviceEq = "serviceEq_example"; // String | Service filter, either LwM2M or bootstrap.
+Integer expireEq = 56; // Integer | Expire filter in days.
+Integer deviceExecutionModeEq = 56; // Integer | Device execution mode: 1 for developer certificates or another natural integer value.
+Integer deviceExecutionModeNeq = 56; // Integer | Device execution mode `not_equals` filter.
+String ownerEq = "ownerEq_example"; // String | Owner name filter.
+Boolean enrollmentModeEq = true; // Boolean | Enrollment mode filter.
+String statusEq = "statusEq_example"; // String | Filter for certificate status.
+String issuerLike = "issuerLike_example"; // String | Issuer filter. Finds all matches where the filter value is a case-insensitive substring of the result. Example: issuer__like=cn=iss matches CN=issuer.
+String subjectLike = "subjectLike_example"; // String | Subject filter. Finds all matches where the filter value is a case-insensitive substring of the result. Example: subject__like=cn=su matches CN=subject.
+String certificateFingerprintEq = "certificateFingerprintEq_example"; // String | Filter for certificate fingerprint.
+Boolean validEq = true; // Boolean | Filter for finding certificates by validity. True returns certificates which are not yet expired. False returns certificates which have expired.
+try {
+ TrustedCertificateRespList result = apiInstance.getAllCertificates(limit, after, order, include, nameEq, serviceEq, expireEq, deviceExecutionModeEq, deviceExecutionModeNeq, ownerEq, enrollmentModeEq, statusEq, issuerLike, subjectLike, certificateFingerprintEq, validEq);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityCertificatesApi#getAllCertificates");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
+ **nameEq** | **String**| Filter for certificate name. | [optional]
+ **serviceEq** | **String**| Service filter, either LwM2M or bootstrap. | [optional]
+ **expireEq** | **Integer**| Expire filter in days. | [optional]
+ **deviceExecutionModeEq** | **Integer**| Device execution mode: 1 for developer certificates or another natural integer value. | [optional]
+ **deviceExecutionModeNeq** | **Integer**| Device execution mode `not_equals` filter. | [optional]
+ **ownerEq** | **String**| Owner name filter. | [optional]
+ **enrollmentModeEq** | **Boolean**| Enrollment mode filter. | [optional]
+ **statusEq** | **String**| Filter for certificate status. | [optional]
+ **issuerLike** | **String**| Issuer filter. Finds all matches where the filter value is a case-insensitive substring of the result. Example: issuer__like=cn=iss matches CN=issuer. | [optional]
+ **subjectLike** | **String**| Subject filter. Finds all matches where the filter value is a case-insensitive substring of the result. Example: subject__like=cn=su matches CN=subject. | [optional]
+ **certificateFingerprintEq** | **String**| Filter for certificate fingerprint. | [optional]
+ **validEq** | **Boolean**| Filter for finding certificates by validity. True returns certificates which are not yet expired. False returns certificates which have expired. | [optional]
+
+### Return type
+
+[**TrustedCertificateRespList**](TrustedCertificateRespList.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getCertificate**
+> TrustedCertificateResp getCertificate(certId)
+
+Get a trusted certificate.
+
+Retrieve a trusted certificate. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/trusted-certificates/{cert_id} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityCertificatesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityCertificatesApi apiInstance = new SecurityAndIdentityCertificatesApi();
+String certId = "certId_example"; // String | The ID of the trusted certificate to retrieve.
+try {
+ TrustedCertificateResp result = apiInstance.getCertificate(certId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityCertificatesApi#getCertificate");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **certId** | **String**| The ID of the trusted certificate to retrieve. |
+
+### Return type
+
+[**TrustedCertificateResp**](TrustedCertificateResp.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **updateCertificate**
+> TrustedCertificateResp updateCertificate(certId, body)
+
+Update trusted certificate.
+
+Update existing trusted certificates. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/trusted-certificates/{cert_id} \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d {\"description\": \"very important cert\"} ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityCertificatesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityCertificatesApi apiInstance = new SecurityAndIdentityCertificatesApi();
+String certId = "certId_example"; // String | The ID of the trusted certificate to update.
+TrustedCertificateUpdateReq body = new TrustedCertificateUpdateReq(); // TrustedCertificateUpdateReq | A trusted certificate object with attributes.
+try {
+ TrustedCertificateResp result = apiInstance.updateCertificate(certId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityCertificatesApi#updateCertificate");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **certId** | **String**| The ID of the trusted certificate to update. |
+ **body** | [**TrustedCertificateUpdateReq**](TrustedCertificateUpdateReq.md)| A trusted certificate object with attributes. |
+
+### Return type
+
+[**TrustedCertificateResp**](TrustedCertificateResp.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentityDeveloperClassCertificatesApi.md b/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentityDeveloperClassCertificatesApi.md
new file mode 100644
index 000000000..14cc81039
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentityDeveloperClassCertificatesApi.md
@@ -0,0 +1,120 @@
+# SecurityAndIdentityDeveloperClassCertificatesApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**createDeveloperCertificate**](SecurityAndIdentityDeveloperClassCertificatesApi.md#createDeveloperCertificate) | **POST** v3/developer-certificates | Create a new developer certificate to connect to the bootstrap server.
+[**getDeveloperCertificate**](SecurityAndIdentityDeveloperClassCertificatesApi.md#getDeveloperCertificate) | **GET** v3/developer-certificates/{developerCertificateId} | Fetch an existing developer certificate to connect to the bootstrap server.
+
+
+
+# **createDeveloperCertificate**
+> DeveloperCertificateResponseData createDeveloperCertificate(body)
+
+Create a new developer certificate to connect to the bootstrap server.
+
+Create a developer certificate (a certificate that can be flashed to multiple devices to connect to the bootstrap server). **Note:** The number of developer certificates allowed per account is limited. Please see [Setting up a Certificate Authority](https://developer.pelion.com/docs/device-management/current/provisioning-process/integrating-with-a-third-party-ca.html). **Example:** ``` curl -X POST http://api.us-east-1.mbedcloud.com/v3/developer-certificates \\ -H \"Authorization: Bearer <access_key>\" \\ -H \"content-type: application/json\" \\ -d { \"name\": \"<certificate_name>\", \"description\": \"<certificate_description>\" } ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityDeveloperClassCertificatesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityDeveloperClassCertificatesApi apiInstance = new SecurityAndIdentityDeveloperClassCertificatesApi();
+DeveloperCertificateRequestData body = new DeveloperCertificateRequestData(); // DeveloperCertificateRequestData |
+try {
+ DeveloperCertificateResponseData result = apiInstance.createDeveloperCertificate(body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityDeveloperClassCertificatesApi#createDeveloperCertificate");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**DeveloperCertificateRequestData**](DeveloperCertificateRequestData.md)| |
+
+### Return type
+
+[**DeveloperCertificateResponseData**](DeveloperCertificateResponseData.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getDeveloperCertificate**
+> DeveloperCertificateResponseData getDeveloperCertificate(developerCertificateId)
+
+Fetch an existing developer certificate to connect to the bootstrap server.
+
+Return an existing developer certificate (a certificate that can be flashed to multiple devices to connect to bootstrap server). **Example:** ``` curl -X GET http://api.us-east-1.mbedcloud.com/v3/developer-certificates/THE_CERTIFICATE_ID \\ -H \"Authorization: Bearer <access_key>\" ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityDeveloperClassCertificatesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityDeveloperClassCertificatesApi apiInstance = new SecurityAndIdentityDeveloperClassCertificatesApi();
+String developerCertificateId = "developerCertificateId_example"; // String | A unique identifier for the developer certificate.
+try {
+ DeveloperCertificateResponseData result = apiInstance.getDeveloperCertificate(developerCertificateId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityDeveloperClassCertificatesApi#getDeveloperCertificate");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **developerCertificateId** | **String**| A unique identifier for the developer certificate. |
+
+### Return type
+
+[**DeveloperCertificateResponseData**](DeveloperCertificateResponseData.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentityPreSharedKeysApi.md b/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentityPreSharedKeysApi.md
new file mode 100644
index 000000000..6c8308bb5
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentityPreSharedKeysApi.md
@@ -0,0 +1,234 @@
+# SecurityAndIdentityPreSharedKeysApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**deletePreSharedKey**](SecurityAndIdentityPreSharedKeysApi.md#deletePreSharedKey) | **DELETE** v2/device-shared-keys/{endpoint_name} | Remove a PSK.
+[**getPreSharedKey**](SecurityAndIdentityPreSharedKeysApi.md#getPreSharedKey) | **GET** v2/device-shared-keys/{endpoint_name} | Get a PSK.
+[**listPreSharedKeys**](SecurityAndIdentityPreSharedKeysApi.md#listPreSharedKeys) | **GET** v2/device-shared-keys | List PSKs.
+[**uploadPreSharedKey**](SecurityAndIdentityPreSharedKeysApi.md#uploadPreSharedKey) | **POST** v2/device-shared-keys | Upload a PSK to Pelion Device Management.
+
+
+
+# **deletePreSharedKey**
+> Void deletePreSharedKey(endpointName)
+
+Remove a PSK.
+
+Remove a PSK. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v2/device-shared-keys/my-endpoint-0001 \\ -H \"Authorization: Bearer <access_key>\" ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityPreSharedKeysApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityPreSharedKeysApi apiInstance = new SecurityAndIdentityPreSharedKeysApi();
+String endpointName = "endpointName_example"; // String | The unique endpoint identifier that this PSK applies to. [Reserved characters](https://en.wikipedia.org/wiki/Percent-encoding#Percent-encoding_reserved_characters) must be percent-encoded.
+try {
+ Void result = apiInstance.deletePreSharedKey(endpointName);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityPreSharedKeysApi#deletePreSharedKey");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **endpointName** | **String**| The unique endpoint identifier that this PSK applies to. [Reserved characters](https://en.wikipedia.org/wiki/Percent-encoding#Percent-encoding_reserved_characters) must be percent-encoded. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getPreSharedKey**
+> PreSharedKeyWithoutSecret getPreSharedKey(endpointName)
+
+Get a PSK.
+
+Check if a PSK for an endpoint exists or not. The response does not contain the secret itself. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v2/device-shared-keys/my-endpoint-0001 \\ -H \"Authorization: Bearer <access_key>\" ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityPreSharedKeysApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityPreSharedKeysApi apiInstance = new SecurityAndIdentityPreSharedKeysApi();
+String endpointName = "endpointName_example"; // String | The unique endpoint identifier that this PSK applies to. [Reserved characters](https://en.wikipedia.org/wiki/Percent-encoding#Percent-encoding_reserved_characters) must be percent-encoded.
+try {
+ PreSharedKeyWithoutSecret result = apiInstance.getPreSharedKey(endpointName);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityPreSharedKeysApi#getPreSharedKey");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **endpointName** | **String**| The unique endpoint identifier that this PSK applies to. [Reserved characters](https://en.wikipedia.org/wiki/Percent-encoding#Percent-encoding_reserved_characters) must be percent-encoded. |
+
+### Return type
+
+[**PreSharedKeyWithoutSecret**](PreSharedKeyWithoutSecret.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **listPreSharedKeys**
+> ListOfPreSharedKeysWithoutSecret listPreSharedKeys(limit, after)
+
+List PSKs.
+
+Retrieve pre-shared keys (PSKs) with pagination. Default page size of 50 entries. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v2/device-shared-keys \\ -H \"Authorization: Bearer <access_key>\" ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityPreSharedKeysApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityPreSharedKeysApi apiInstance = new SecurityAndIdentityPreSharedKeysApi();
+Integer limit = 50; // Integer | The number of objects to retrieve on a page (2-1000). Values outside the range are set to the closest limit.
+String after = "after_example"; // String | An offset token for fetching a specific page. Provided by the server.
+try {
+ ListOfPreSharedKeysWithoutSecret result = apiInstance.listPreSharedKeys(limit, after);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityPreSharedKeysApi#listPreSharedKeys");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **limit** | **Integer**| The number of objects to retrieve on a page (2-1000). Values outside the range are set to the closest limit. | [optional] [default to 50]
+ **after** | **String**| An offset token for fetching a specific page. Provided by the server. | [optional]
+
+### Return type
+
+[**ListOfPreSharedKeysWithoutSecret**](ListOfPreSharedKeysWithoutSecret.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+
+# **uploadPreSharedKey**
+> Void uploadPreSharedKey(body)
+
+Upload a PSK to Pelion Device Management.
+
+Upload a PSK for an endpoint to allow it to bootstrap. The existing key cannot be overwritten, but needs to be deleted first in the case of re-setting a PSK for an endpoint. **Note**: The PSK APIs are available only to accounts that have this feature enabled. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v2/device-shared-keys \\ -H \"Authorization: Bearer <access_key>\" \\ -H \"content-type: application/json\" \\ -d '{ \"endpoint_name\": \"my-endpoint-0001\", \"secret_hex\": \"4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a\" }' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityPreSharedKeysApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityPreSharedKeysApi apiInstance = new SecurityAndIdentityPreSharedKeysApi();
+PreSharedKey body = new PreSharedKey(); // PreSharedKey | PSK to upload.
+try {
+ Void result = apiInstance.uploadPreSharedKey(body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityPreSharedKeysApi#uploadPreSharedKey");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**PreSharedKey**](PreSharedKey.md)| PSK to upload. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentitySecureDeviceAccessApi.md b/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentitySecureDeviceAccessApi.md
new file mode 100644
index 000000000..ac9547b92
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentitySecureDeviceAccessApi.md
@@ -0,0 +1,296 @@
+# SecurityAndIdentitySecureDeviceAccessApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**createAceAuthToken**](SecurityAndIdentitySecureDeviceAccessApi.md#createAceAuthToken) | **POST** /ace-auth/token | Get an access token to use with a device.
+[**createTrustAnchor**](SecurityAndIdentitySecureDeviceAccessApi.md#createTrustAnchor) | **POST** /v3/trust-anchors | Create a new trust anchor for the account.
+[**deleteTrustAnchor**](SecurityAndIdentitySecureDeviceAccessApi.md#deleteTrustAnchor) | **DELETE** /v3/trust-anchors/{trust_anchor_id} | Delete a trust anchor.
+[**getTrustAnchors**](SecurityAndIdentitySecureDeviceAccessApi.md#getTrustAnchors) | **GET** /v3/trust-anchors | Get the account's trust anchor used to sign the access token.
+[**updateTrustAnchor**](SecurityAndIdentitySecureDeviceAccessApi.md#updateTrustAnchor) | **PUT** /v3/trust-anchors/{trust_anchor_id} | Update trust anchor attributes (description).
+
+
+
+# **createAceAuthToken**
+> TokenResponse createAceAuthToken(body)
+
+Get an access token to use with a device.
+
+Generate a signed CWT (CBOR Web Token). The SDA Android SDK uses this API to gain access to perform actions on the devices specified in the audience (aud). <br> Authorized for roles: Service, ServiceAdministrator <br> **Usage example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/ace-auth/token \\ -H 'Authorization: <valid JWT>' \\ -H 'content-type: application/json;charset=UTF-8' \\ -d '{ \"grant_type\":\"client_credentials\", \"aud\":[\"id:f90b1017e52f4c70ad92684e802c9249\",\"ep:dev1\"], \"scope\":\"turn-led-on\", \"cnf\":\"-----BEGIN PUBLIC KEY-----MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ...XwIDAQAB-----END PUBLIC KEY-----\" }' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentitySecureDeviceAccessApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentitySecureDeviceAccessApi apiInstance = new SecurityAndIdentitySecureDeviceAccessApi();
+TokenRequest body = new TokenRequest(); // TokenRequest | Create access token request.
+try {
+ TokenResponse result = apiInstance.createAceAuthToken(body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentitySecureDeviceAccessApi#createAceAuthToken");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**TokenRequest**](TokenRequest.md)| Create access token request. |
+
+### Return type
+
+[**TokenResponse**](TokenResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **createTrustAnchor**
+> CreateTrustAnchorResponse createTrustAnchor(body)
+
+Create a new trust anchor for the account.
+
+Create a trust anchor key pair and return the public key and creation time. Each account can have one trust anchor only. This API fails if a trust anchor already exists for the account. <br> Authorized for roles: Service, ServiceAdministrator <br> **Usage example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/trust-anchors \\ -H 'Authorization: <valid JWT>' \\ -H 'content-type: application/json;charset=UTF-8' \\ -d '{ \"description\": \"Trust anchor for room lighting controller.\" }' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentitySecureDeviceAccessApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentitySecureDeviceAccessApi apiInstance = new SecurityAndIdentitySecureDeviceAccessApi();
+CreateTrustAnchorRequest body = new CreateTrustAnchorRequest(); // CreateTrustAnchorRequest | Request a new trust anchor.
+try {
+ CreateTrustAnchorResponse result = apiInstance.createTrustAnchor(body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentitySecureDeviceAccessApi#createTrustAnchor");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**CreateTrustAnchorRequest**](CreateTrustAnchorRequest.md)| Request a new trust anchor. |
+
+### Return type
+
+[**CreateTrustAnchorResponse**](CreateTrustAnchorResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **deleteTrustAnchor**
+> Void deleteTrustAnchor(trustAnchorId)
+
+Delete a trust anchor.
+
+Delete the specified trust anchor. Unrecoverable. <br> Authorized for roles: Service, ServiceAdministrator <br> **Usage example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/trust-anchors/8e0a9494cc95b750ec6c81464eb06725 \\ -H 'Authorization: <valid JWT>' \\ ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentitySecureDeviceAccessApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentitySecureDeviceAccessApi apiInstance = new SecurityAndIdentitySecureDeviceAccessApi();
+String trustAnchorId = "trustAnchorId_example"; // String | The id of the trust anchor to be deleted
+try {
+ Void result = apiInstance.deleteTrustAnchor(trustAnchorId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentitySecureDeviceAccessApi#deleteTrustAnchor");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **trustAnchorId** | **String**| The id of the trust anchor to be deleted |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getTrustAnchors**
+> GetTrustAnchorsResponse getTrustAnchors(limit, order, after, include)
+
+Get the account's trust anchor used to sign the access token.
+
+Get all trust anchors that match the account ID specified in the JWT. <br> Authorized for roles: Service, ServiceAdministrator <br> **Usage example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/trust-anchors \\ -H 'Authorization: <valid JWT>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentitySecureDeviceAccessApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentitySecureDeviceAccessApi apiInstance = new SecurityAndIdentitySecureDeviceAccessApi();
+Integer limit = 56; // Integer | Indicates how many objects to retrieve in the page. The minimum limit is 2 and the maximum is 1000. Limit values outside of this range are set to the closest limit.
+String order = "order_example"; // String | Indicates how to order the entries based on when they were created. `ASC` by default.
+String after = "after_example"; // String | The ID of the item after which to retrieve the next page.
+String include = "include_example"; // String | Comma-separated list of data fields to return. Currently supported: `total_count`.
+try {
+ GetTrustAnchorsResponse result = apiInstance.getTrustAnchors(limit, order, after, include);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentitySecureDeviceAccessApi#getTrustAnchors");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **limit** | **Integer**| Indicates how many objects to retrieve in the page. The minimum limit is 2 and the maximum is 1000. Limit values outside of this range are set to the closest limit. | [optional]
+ **order** | **String**| Indicates how to order the entries based on when they were created. `ASC` by default. | [optional] [enum: ASC, DESC]
+ **after** | **String**| The ID of the item after which to retrieve the next page. | [optional]
+ **include** | **String**| Comma-separated list of data fields to return. Currently supported: `total_count`. | [optional]
+
+### Return type
+
+[**GetTrustAnchorsResponse**](GetTrustAnchorsResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **updateTrustAnchor**
+> UpdateTrustAnchorResponse updateTrustAnchor(trustAnchorId, body)
+
+Update trust anchor attributes (description).
+
+Updates a trust anchor description attribute. <br> Authorized for roles: Service, ServiceAdministrator <br> **Usage example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/trust-anchors/8e0a9494cc95b750ec6c81464eb06725 \\ -H 'Authorization: <valid JWT>' \\ -H 'content-type: application/json;charset=UTF-8' \\ -d '{ \"description\": \"Trust anchor for ambient light module\" }' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentitySecureDeviceAccessApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentitySecureDeviceAccessApi apiInstance = new SecurityAndIdentitySecureDeviceAccessApi();
+String trustAnchorId = "trustAnchorId_example"; // String | The id of the trust anchor to be updated
+UpdateTrustAnchorRequest body = new UpdateTrustAnchorRequest(); // UpdateTrustAnchorRequest | Update trust anchor request.
+try {
+ UpdateTrustAnchorResponse result = apiInstance.updateTrustAnchor(trustAnchorId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentitySecureDeviceAccessApi#updateTrustAnchor");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **trustAnchorId** | **String**| The id of the trust anchor to be updated |
+ **body** | [**UpdateTrustAnchorRequest**](UpdateTrustAnchorRequest.md)| Update trust anchor request. |
+
+### Return type
+
+[**UpdateTrustAnchorResponse**](UpdateTrustAnchorResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentityServerCredentialsApi.md b/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentityServerCredentialsApi.md
new file mode 100644
index 000000000..a0100e543
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/SecurityAndIdentityServerCredentialsApi.md
@@ -0,0 +1,164 @@
+# SecurityAndIdentityServerCredentialsApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**getAllServerCredentials**](SecurityAndIdentityServerCredentialsApi.md#getAllServerCredentials) | **GET** v3/server-credentials | Fetch all (Bootstrap and LwM2M) server credentials.
+[**getBootstrapServerCredentials**](SecurityAndIdentityServerCredentialsApi.md#getBootstrapServerCredentials) | **GET** v3/server-credentials/bootstrap | Fetch bootstrap server credentials.
+[**getL2M2MServerCredentials**](SecurityAndIdentityServerCredentialsApi.md#getL2M2MServerCredentials) | **GET** v3/server-credentials/lwm2m | Fetch LwM2M server credentials.
+
+
+
+# **getAllServerCredentials**
+> AllServerCredentialsResponseData getAllServerCredentials()
+
+Fetch all (Bootstrap and LwM2M) server credentials.
+
+Return all (bootstrap and LwM2M) server credentials for client to connect to bootstrap or LwM2M server. **Example:** ``` curl -X GET http://api.us-east-1.mbedcloud.com/v3/server-credentials \\ -H \"Authorization: Bearer <access_key>\" ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityServerCredentialsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityServerCredentialsApi apiInstance = new SecurityAndIdentityServerCredentialsApi();
+try {
+ AllServerCredentialsResponseData result = apiInstance.getAllServerCredentials();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityServerCredentialsApi#getAllServerCredentials");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**AllServerCredentialsResponseData**](AllServerCredentialsResponseData.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getBootstrapServerCredentials**
+> ServerCredentialsResponseData getBootstrapServerCredentials()
+
+Fetch bootstrap server credentials.
+
+Return bootstrap server credentials for client to connect to bootstrap server. **Example:** ``` curl -X GET http://api.us-east-1.mbedcloud.com/v3/server-credentials/bootstrap \\ -H \"Authorization: Bearer <access_key>\" ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityServerCredentialsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityServerCredentialsApi apiInstance = new SecurityAndIdentityServerCredentialsApi();
+try {
+ ServerCredentialsResponseData result = apiInstance.getBootstrapServerCredentials();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityServerCredentialsApi#getBootstrapServerCredentials");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**ServerCredentialsResponseData**](ServerCredentialsResponseData.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getL2M2MServerCredentials**
+> ServerCredentialsResponseData getL2M2MServerCredentials()
+
+Fetch LwM2M server credentials.
+
+Return LwM2M server credentials for client to connect to LwM2M server. **Example:** ``` curl -X GET http://api.us-east-1.mbedcloud.com/v3/server-credentials/lwm2m \\ -H \"Authorization: Bearer <access_key>\" ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.SecurityAndIdentityServerCredentialsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+SecurityAndIdentityServerCredentialsApi apiInstance = new SecurityAndIdentityServerCredentialsApi();
+try {
+ ServerCredentialsResponseData result = apiInstance.getL2M2MServerCredentials();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling SecurityAndIdentityServerCredentialsApi#getL2M2MServerCredentials");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**ServerCredentialsResponseData**](ServerCredentialsResponseData.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/SerializationConfigData.md b/backends/pelioncloud_devicemanagement/docs/SerializationConfigData.md
index 0c2ce2235..ace4baa01 100644
--- a/backends/pelioncloud_devicemanagement/docs/SerializationConfigData.md
+++ b/backends/pelioncloud_devicemanagement/docs/SerializationConfigData.md
@@ -4,8 +4,8 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**cfg** | **Object** | Serialization configuration object according to configuration type. | [optional]
-**maxChunkSize** | **Integer** | Maximum number of messages in NotificationMessage container delivered in one request. Default is 10000. Using a very low value for high troughput applications may cause lag in notification delivery, as a new chunk is sent only after the previous one has been acknowledged. Using a high value is recommended and safe, as chunks are sent quickly after notifications are received from devices. See [notification sending logic](../integrate-web-app/event-notification.html#notification-sending-logic) for more details. | [optional]
+**cfg** | [**SerializationConfigObjectV2**](SerializationConfigObjectV2.md) | | [optional]
+**maxChunkSize** | **Integer** | Maximum number of messages in NotificationMessage container delivered in one request. Default is 10000. Using a very low value for high troughput applications may cause lag in notification delivery, as a new chunk is sent only after the previous one has been acknowledged. Using a high value is recommended and safe, as chunks are sent quickly after notifications are received from devices. See [notification sending logic](https://developer.pelion.com/docs/device-management/current/integrate-web-app/event-notification.html#notification-sending-logic) for more details. | [optional]
**type** | [**TypeEnum**](#TypeEnum) | Serialization type: v2 - specified in NotificationMessage. |
diff --git a/backends/pelioncloud_devicemanagement/docs/ServicePackageQuotaHistoryItem.md b/backends/pelioncloud_devicemanagement/docs/ServicePackageQuotaHistoryItem.md
index 8914481eb..3d2a72e06 100644
--- a/backends/pelioncloud_devicemanagement/docs/ServicePackageQuotaHistoryItem.md
+++ b/backends/pelioncloud_devicemanagement/docs/ServicePackageQuotaHistoryItem.md
@@ -8,8 +8,8 @@ Name | Type | Description | Notes
**amount** | **Long** | Negative or positive quota usage. |
**id** | **String** | Service package quota history ID. |
**reason** | [**ReasonEnum**](#ReasonEnum) | Type of quota usage entry. |
-**reservation** | [**ServicePackageQuotaHistoryReservation**](ServicePackageQuotaHistoryReservation.md) | Reservation details if reason is `reservation`, `reservation_releasem` or `reservation_termination`. | [optional]
-**servicePackage** | [**ServicePackageQuotaHistoryServicePackage**](ServicePackageQuotaHistoryServicePackage.md) | Service package details if reason is `package_creation`, `package_renewal` or `package_termination`. | [optional]
+**reservation** | [**ServicePackageQuotaHistoryReservation**](ServicePackageQuotaHistoryReservation.md) | Reservation details if reason is `reservation`, `reservation_release` or `reservation_termination`. | [optional]
+**servicePackage** | [**ServicePackageQuotaHistoryServicePackage**](ServicePackageQuotaHistoryServicePackage.md) | Service package details if reason is `package_creation`, `package_renewal`, `package_termination`, or `package_tokens_edit`. | [optional]
@@ -22,6 +22,7 @@ RESERVATION_TERMINATION | "reservation_termination"
PACKAGE_CREATION | "package_creation"
PACKAGE_RENEWAL | "package_renewal"
PACKAGE_TERMINATION | "package_termination"
+PACKAGE_TOKENS_EDIT | "package_tokens_edit"
diff --git a/backends/pelioncloud_devicemanagement/docs/ServicePackageQuotaHistoryResponse.md b/backends/pelioncloud_devicemanagement/docs/ServicePackageQuotaHistoryResponse.md
index fd66ae248..a12680df5 100644
--- a/backends/pelioncloud_devicemanagement/docs/ServicePackageQuotaHistoryResponse.md
+++ b/backends/pelioncloud_devicemanagement/docs/ServicePackageQuotaHistoryResponse.md
@@ -7,8 +7,9 @@ Name | Type | Description | Notes
**after** | **String** | ID after which to fetch quota history. | [optional]
**data** | [**List<ServicePackageQuotaHistoryItem>**](ServicePackageQuotaHistoryItem.md) | List of history items. Empty list if no entries are available. |
**hasMore** | **Boolean** | If there is next available quota history paged response to fetch. |
-**limit** | **Integer** | Maximum number of quota history entries contained in one paged response. |
+**limit** | **Integer** | Maximum number of quota history entries in one paged response. |
**object** | [**ObjectEnum**](#ObjectEnum) | Always set to `service-package-quota-history`. |
+**order** | **String** | History item record order based on creation time. |
**totalCount** | **Integer** | Sum of all quota history entries that should be returned. |
diff --git a/backends/pelioncloud_devicemanagement/docs/ServicePackageReport.md b/backends/pelioncloud_devicemanagement/docs/ServicePackageReport.md
index 562d05efe..3779e3ec4 100644
--- a/backends/pelioncloud_devicemanagement/docs/ServicePackageReport.md
+++ b/backends/pelioncloud_devicemanagement/docs/ServicePackageReport.md
@@ -4,8 +4,8 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**aggregatedQuotaUsage** | [**List<AggregatedQuotaUsageReport>**](AggregatedQuotaUsageReport.md) | |
-**metadata** | [**ServicePackageMetadata**](ServicePackageMetadata.md) | `Null` if service package has expired. |
+**aggregatedQuotaUsage** | [**List<AggregatedQuotaUsageReport>**](AggregatedQuotaUsageReport.md) | | [optional]
+**metadata** | [**ServicePackageMetadata**](ServicePackageMetadata.md) | `Null` if service package has expired. | [optional]
**quotaUsage** | [**List<QuotaUsageReport>**](QuotaUsageReport.md) | |
diff --git a/backends/pelioncloud_devicemanagement/docs/StatisticsReportListResponse.md b/backends/pelioncloud_devicemanagement/docs/StatisticsReportListResponse.md
new file mode 100644
index 000000000..80bf30761
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/StatisticsReportListResponse.md
@@ -0,0 +1,18 @@
+
+# StatisticsReportListResponse
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**after** | **String** | An offset token for the current page. | [optional]
+**data** | [**List<StatisticsReportResponse>**](StatisticsReportResponse.md) | List of manufacturing statistics. | [optional]
+**end** | [**DateTime**](DateTime.md) | | [optional]
+**hasMore** | **Boolean** | Indicates whether additional results are available. | [optional]
+**limit** | **Integer** | The number of results to return (2-1000). Values outside of this range are set to the closest limit. | [optional]
+**object** | **String** | The API object type. The object type of this API is \"list\". | [optional]
+**order** | **String** | Record order based on record identifier. | [optional]
+**start** | [**DateTime**](DateTime.md) | | [optional]
+**totalCount** | **Integer** | | [optional]
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/StatisticsReportResponse.md b/backends/pelioncloud_devicemanagement/docs/StatisticsReportResponse.md
new file mode 100644
index 000000000..d3cc7a2f5
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/StatisticsReportResponse.md
@@ -0,0 +1,17 @@
+
+# StatisticsReportResponse
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**avgProvisioningTimeSec** | [**BigDecimal**](BigDecimal.md) | Average provisioning time in seconds. | [optional]
+**deviceCount** | **Integer** | Number of manufactured devices. | [optional]
+**factoryId** | **Integer** | Factory ID. | [optional]
+**factoryName** | **String** | Factory name. | [optional]
+**id** | [**UUID**](UUID.md) | Unique row identifier. | [optional]
+**maxProvisioningTimeSec** | [**BigDecimal**](BigDecimal.md) | Maximum provisioning time in seconds. | [optional]
+**minProvisioningTimeSec** | [**BigDecimal**](BigDecimal.md) | Minimum provisioning time in seconds. | [optional]
+**workstation** | **String** | Workstation. | [optional]
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/StatisticsSeriesRecord.md b/backends/pelioncloud_devicemanagement/docs/StatisticsSeriesRecord.md
new file mode 100644
index 000000000..ac77eb29a
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/StatisticsSeriesRecord.md
@@ -0,0 +1,27 @@
+
+# StatisticsSeriesRecord
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**activeDevices** | **Integer** | |
+**deviceToPelionMessages** | [**DeviceToPelionMessagesCounter**](DeviceToPelionMessagesCounter.md) | | [optional]
+**firmwareUpdates** | **Integer** | |
+**id** | **String** | Metric ID. |
+**object** | [**ObjectEnum**](#ObjectEnum) | Always `billing-statistics`. |
+**pelionToDeviceMessages** | [**PelionToDeviceMessagesCounter**](PelionToDeviceMessagesCounter.md) | | [optional]
+**pelionToWebappNotifications** | **Integer** | | [optional]
+**restApiRequestsWithApiKeyToken** | **Integer** | | [optional]
+**restApiRequestsWithUserToken** | **Integer** | | [optional]
+**sdaTokens** | **Integer** | |
+**timestamp** | [**DateTime**](DateTime.md) | The start of the interval for which the data is aggregated, in RFC3339 date-time format with millisecond accuracy and UTC time zone. Each interval includes data for the time greater than or equal to the timestamp and less than the next interval's starting. |
+
+
+
+## Enum: ObjectEnum
+Name | Value
+---- | -----
+STATISTICS | "billing-statistics"
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/StatisticsViewResponse.md b/backends/pelioncloud_devicemanagement/docs/StatisticsViewResponse.md
new file mode 100644
index 000000000..4851d7969
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/StatisticsViewResponse.md
@@ -0,0 +1,23 @@
+
+# StatisticsViewResponse
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**after** | **String** | The ID after which to fetch the statistics view. | [optional]
+**data** | [**List<StatisticsSeriesRecord>**](StatisticsSeriesRecord.md) | List of statistics view records. Empty list if no records are available. |
+**hasMore** | **Boolean** | Indicates whether a new statistics view response is available. |
+**limit** | **Integer** | Maximum number of statistics view records on a page. |
+**object** | [**ObjectEnum**](#ObjectEnum) | Always `list`. |
+**order** | **String** | Record order. Acceptable values: ASC, DESC. Default: ASC. |
+**totalCount** | **Long** | Sum of all statistics view records to return. Included in the response when you use the query parameter include=total_count. | [optional]
+
+
+
+## Enum: ObjectEnum
+Name | Value
+---- | -----
+LIST | "list"
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/SubjectList.md b/backends/pelioncloud_devicemanagement/docs/SubjectList.md
index 1e4c9f5f7..f21dc8391 100644
--- a/backends/pelioncloud_devicemanagement/docs/SubjectList.md
+++ b/backends/pelioncloud_devicemanagement/docs/SubjectList.md
@@ -5,6 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**apikeys** | **List<String>** | An array of API key IDs. | [optional]
+**applications** | **List<String>** | An array of applicationIDs. | [optional]
**users** | **List<String>** | An array of user IDs. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/SubtenantAccountReport.md b/backends/pelioncloud_devicemanagement/docs/SubtenantAccountReport.md
index 51fde27e3..df730b03f 100644
--- a/backends/pelioncloud_devicemanagement/docs/SubtenantAccountReport.md
+++ b/backends/pelioncloud_devicemanagement/docs/SubtenantAccountReport.md
@@ -4,9 +4,9 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**account** | [**SubtenantReportAccountContactInfo**](SubtenantReportAccountContactInfo.md) | Subtenant account contact information. |
+**account** | [**SubtenantReportAccountContactInfo**](SubtenantReportAccountContactInfo.md) | Tenant account contact information. |
**billingData** | [**ReportBillingData**](ReportBillingData.md) | Report billing data. |
-**servicePackage** | [**SubtenantServicePackageReport**](SubtenantServicePackageReport.md) | Report service package for subtenant account. | [optional]
+**servicePackage** | [**SubtenantServicePackageReport**](SubtenantServicePackageReport.md) | service package report for the tenant. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/SubtenantReportAccountContactInfo.md b/backends/pelioncloud_devicemanagement/docs/SubtenantReportAccountContactInfo.md
index 0271ce2cf..e1f568ed0 100644
--- a/backends/pelioncloud_devicemanagement/docs/SubtenantReportAccountContactInfo.md
+++ b/backends/pelioncloud_devicemanagement/docs/SubtenantReportAccountContactInfo.md
@@ -6,11 +6,13 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**addressLine1** | **String** | | [optional]
**addressLine2** | **String** | | [optional]
+**alias** | **String** | | [optional]
+**businessModel** | [**BusinessModelEnum**](#BusinessModelEnum) | The business model selected for the account to generate the billing reports. | [optional]
**city** | **String** | | [optional]
**company** | **String** | |
**contact** | **String** | | [optional]
**country** | **String** | | [optional]
-**customerSubtenantId** | **String** | Account subtenant ID, if a subtenant. |
+**customerSubtenantId** | **String** | Account tenant ID, valid only for tenants. |
**email** | **String** | | [optional]
**id** | **String** | Account ID. |
**phoneNumber** | **String** | | [optional]
@@ -18,4 +20,12 @@ Name | Type | Description | Notes
**state** | **String** | | [optional]
+
+## Enum: BusinessModelEnum
+Name | Value
+---- | -----
+ACTIVE_DEVICE_BUSINESS_MODEL | "active_device_business_model"
+API_CALLS_1_BUSINESS_MODEL | "api_calls_1_business_model"
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/SuccessfulResponse.md b/backends/pelioncloud_devicemanagement/docs/SuccessfulResponse.md
index aa00af72d..e42857d5c 100644
--- a/backends/pelioncloud_devicemanagement/docs/SuccessfulResponse.md
+++ b/backends/pelioncloud_devicemanagement/docs/SuccessfulResponse.md
@@ -4,7 +4,7 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**after** | **String** | The metric ID included in the request or null. | [optional]
+**after** | **String** | The metric ID included in the request, or null. | [optional]
**data** | [**List<Metric>**](Metric.md) | | [optional]
**hasMore** | **Boolean** | Indicates whether there are more results for you to fetch in the next page. | [optional]
**limit** | **Integer** | The limit used in the request to retrieve the results. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/TenantAccountsAccessKeysApi.md b/backends/pelioncloud_devicemanagement/docs/TenantAccountsAccessKeysApi.md
new file mode 100644
index 000000000..dfcdd5756
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/TenantAccountsAccessKeysApi.md
@@ -0,0 +1,134 @@
+# TenantAccountsAccessKeysApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**getAccountAccessKey**](TenantAccountsAccessKeysApi.md#getAccountAccessKey) | **GET** v3/accounts/{account_id}/access-keys/{access_key_id} | Get access key.
+[**getAllAccountAccessKeys**](TenantAccountsAccessKeysApi.md#getAllAccountAccessKeys) | **GET** v3/accounts/{account_id}/access-keys | Get all access keys.
+
+
+
+# **getAccountAccessKey**
+> AccessKey getAccountAccessKey(accountId, accessKeyId)
+
+Get access key.
+
+Retrieve details of an access key. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/access-keys/{access_key_id} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsAccessKeysApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsAccessKeysApi apiInstance = new TenantAccountsAccessKeysApi();
+String accountId = "accountId_example"; // String | The ID of the account to retrieve.
+String accessKeyId = "accessKeyId_example"; // String | The ID of the access key to retrieve.
+try {
+ AccessKey result = apiInstance.getAccountAccessKey(accountId, accessKeyId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsAccessKeysApi#getAccountAccessKey");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account to retrieve. |
+ **accessKeyId** | **String**| The ID of the access key to retrieve. |
+
+### Return type
+
+[**AccessKey**](AccessKey.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getAllAccountAccessKeys**
+> AccessKeyList getAllAccountAccessKeys(accountId, limit, after, order, include, statusEq, applicationIdEq)
+
+Get all access keys.
+
+Retrieve an array of access keys. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/access-keys \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsAccessKeysApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsAccessKeysApi apiInstance = new TenantAccountsAccessKeysApi();
+String accountId = "accountId_example"; // String | The ID of the account to retrieve.
+Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
+String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
+String statusEq = "statusEq_example"; // String | Status filter.
+String applicationIdEq = "applicationIdEq_example"; // String | Application filter.
+try {
+ AccessKeyList result = apiInstance.getAllAccountAccessKeys(accountId, limit, after, order, include, statusEq, applicationIdEq);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsAccessKeysApi#getAllAccountAccessKeys");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account to retrieve. |
+ **limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
+ **statusEq** | **String**| Status filter. | [optional]
+ **applicationIdEq** | **String**| Application filter. | [optional]
+
+### Return type
+
+[**AccessKeyList**](AccessKeyList.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/TenantAccountsAccountsApi.md b/backends/pelioncloud_devicemanagement/docs/TenantAccountsAccountsApi.md
index e989374c1..ad8c55ecf 100644
--- a/backends/pelioncloud_devicemanagement/docs/TenantAccountsAccountsApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/TenantAccountsAccountsApi.md
@@ -5,18 +5,18 @@ All URIs are relative to *https://api.us-east-1.mbedcloud.com*
Method | HTTP request | Description
------------- | ------------- | -------------
[**createAccount**](TenantAccountsAccountsApi.md#createAccount) | **POST** v3/accounts | Create a new account.
-[**getAccountInfo**](TenantAccountsAccountsApi.md#getAccountInfo) | **GET** v3/accounts/{account_id} | Get account info.
+[**getAccountInfo**](TenantAccountsAccountsApi.md#getAccountInfo) | **GET** v3/accounts/{account_id} | Get account information.
[**getAllAccounts**](TenantAccountsAccountsApi.md#getAllAccounts) | **GET** v3/accounts | Get all accounts.
[**updateAccount**](TenantAccountsAccountsApi.md#updateAccount) | **PUT** v3/accounts/{account_id} | Update attributes of an existing account.
# **createAccount**
-> AccountInfo createAccount(body, action)
+> AccountCreationResp createAccount(body, action)
Create a new account.
-Create a new account. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"display_name\": \"MyAccount1\", \"admin_name\": \"accountAdmin1\", \"email\": \"example_admin@myaccount.info\", \"country\": \"United Kingdom\", \"end_market\": \"Smart City\", \"address_line1\": \"110 Fulbourn Rd\", \"city\": \"Cambridge\", \"contact\": \"J. Doe\", \"company\": \"Arm\"}' ```
+Create a new account. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"display_name\": \"MyAccount1\", \"aliases\": [ \"my-account\" ], \"admin_name\": \"accountAdmin1\", \"email\": \"example_admin@myaccount.info\", \"country\": \"United Kingdom\", \"end_market\": \"Smart City\", \"address_line1\": \"110 Fulbourn Rd\", \"city\": \"Cambridge\", \"contact\": \"J. Doe\", \"company\": \"Arm\"}' ```
### Example
```java
@@ -39,7 +39,7 @@ TenantAccountsAccountsApi apiInstance = new TenantAccountsAccountsApi();
AccountCreationReq body = new AccountCreationReq(); // AccountCreationReq | Details of the account to create.
String action = "create"; // String | Action, either `create` or `enroll`. - `create` creates the account where its admin user has ACTIVE status if `admin_password` was defined in the request, or RESET status if no `admin_password` was defined. If the user already exists, its status is not modified.
- `enroll` creates the account where its admin user has ENROLLING status. If the user already exists, its status is not modified. Email to finish enrollment or notify the existing user about the new account is sent to the `admin_email` defined in the request.
try {
- AccountInfo result = apiInstance.createAccount(body, action);
+ AccountCreationResp result = apiInstance.createAccount(body, action);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling TenantAccountsAccountsApi#createAccount");
@@ -56,7 +56,7 @@ Name | Type | Description | Notes
### Return type
-[**AccountInfo**](AccountInfo.md)
+[**AccountCreationResp**](AccountCreationResp.md)
### Authorization
@@ -71,9 +71,9 @@ Name | Type | Description | Notes
# **getAccountInfo**
> AccountInfo getAccountInfo(accountId, include, properties)
-Get account info.
+Get account information.
-Retrieve detailed information about an account. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id} \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve detailed information about an account. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -93,7 +93,7 @@ Bearer.setApiKey("YOUR API KEY");
//Bearer.setApiKeyPrefix("Token");
TenantAccountsAccountsApi apiInstance = new TenantAccountsAccountsApi();
-String accountId = "accountId_example"; // String | The ID of the account to fetch.
+String accountId = "accountId_example"; // String | The ID of the account to retrieve.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: limits, policies, sub_accounts, history.
String properties = "properties_example"; // String | Property name to return from account-specific properties.
try {
@@ -109,7 +109,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **accountId** | **String**| The ID of the account to fetch. |
+ **accountId** | **String**| The ID of the account to retrieve. |
**include** | **String**| Comma-separated additional data to return. Currently supported: limits, policies, sub_accounts, history. | [optional]
**properties** | **String**| Property name to return from account-specific properties. | [optional]
@@ -132,7 +132,7 @@ Name | Type | Description | Notes
Get all accounts.
-Returns an array of account objects, optionally filtered by status and tier level. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve an array of tenant accounts, optionally filtered by status and tier level. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -160,7 +160,7 @@ String parentEq = "parentEq_example"; // String | An optional filter for parent
String endMarketEq = "endMarketEq_example"; // String | An optional filter for account end market.
String countryLike = "countryLike_example"; // String | An optional filter for account country. Finds all matches where the filter value is a case-insensitive substring of the result. Example: country__like=LAND matches Ireland.
Integer limit = 1000; // Integer | The number of results to return (2-1000). Default 1000.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
String order = "ASC"; // String | Record order. Acceptable values: ASC, DESC. Default: ASC.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: limits, policies, sub_accounts, history.
String format = "format_example"; // String | Format information for the query response. Supported: format=breakdown.
@@ -186,7 +186,7 @@ Name | Type | Description | Notes
**endMarketEq** | **String**| An optional filter for account end market. | [optional]
**countryLike** | **String**| An optional filter for account country. Finds all matches where the filter value is a case-insensitive substring of the result. Example: country__like=LAND matches Ireland. | [optional]
**limit** | **Integer**| The number of results to return (2-1000). Default 1000. | [optional] [default to 1000]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
**order** | **String**| Record order. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**include** | **String**| Comma-separated additional data to return. Currently supported: limits, policies, sub_accounts, history. | [optional]
**format** | **String**| Format information for the query response. Supported: format=breakdown. | [optional]
@@ -211,7 +211,7 @@ Name | Type | Description | Notes
Update attributes of an existing account.
-Update an account. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id} \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"phone_number\": \"12345678\"}' ```
+Update an account. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id} \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"phone_number\": \"12345678\"}' ```
### Example
```java
diff --git a/backends/pelioncloud_devicemanagement/docs/TenantAccountsApiKeysApi.md b/backends/pelioncloud_devicemanagement/docs/TenantAccountsApiKeysApi.md
index 4471e0967..178f6b199 100644
--- a/backends/pelioncloud_devicemanagement/docs/TenantAccountsApiKeysApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/TenantAccountsApiKeysApi.md
@@ -10,7 +10,7 @@ Method | HTTP request | Description
[**deleteAccountApiKey**](TenantAccountsApiKeysApi.md#deleteAccountApiKey) | **DELETE** v3/accounts/{account_id}/api-keys/{apikey_id} | Delete the API key.
[**getAccountApiKey**](TenantAccountsApiKeysApi.md#getAccountApiKey) | **GET** v3/accounts/{account_id}/api-keys/{apikey_id} | Get API key details.
[**getAllAccountApiKeys**](TenantAccountsApiKeysApi.md#getAllAccountApiKeys) | **GET** v3/accounts/{account_id}/api-keys | Get all API keys.
-[**getGroupsOfAccountApikey**](TenantAccountsApiKeysApi.md#getGroupsOfAccountApikey) | **GET** v3/accounts/{account_id}/api-keys/{apikey_id}/groups | Get groups associated with the API key.
+[**getGroupsOfAccountApikey**](TenantAccountsApiKeysApi.md#getGroupsOfAccountApikey) | **GET** v3/accounts/{account_id}/api-keys/{apikey_id}/groups | Get policy groups of an API key.
[**removeAccountApiKeyFromGroups**](TenantAccountsApiKeysApi.md#removeAccountApiKeyFromGroups) | **DELETE** v3/accounts/{account_id}/api-keys/{apikey_id}/groups | Remove API key from groups.
[**removeAccountApiKeyFromListedGroups**](TenantAccountsApiKeysApi.md#removeAccountApiKeyFromListedGroups) | **POST** v3/accounts/{account_id}/api-keys/{apikey_id}/groups/remove | Remove API key from groups.
[**resetAccountApiKeySecret**](TenantAccountsApiKeysApi.md#resetAccountApiKeySecret) | **POST** v3/accounts/{account_id}/api-keys/{apikey_id}/reset-secret | Reset the secret key.
@@ -23,7 +23,7 @@ Method | HTTP request | Description
Add API key to a list of groups.
-Add API key to groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/groups \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Add API key to groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/groups \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -82,7 +82,7 @@ Name | Type | Description | Notes
Add API key to a list of groups.
-Add an API key to groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/groups/add \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Add an API key to groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/groups/add \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -141,7 +141,7 @@ Name | Type | Description | Notes
Create a new API key.
-Create a new API key. There is no default value for the owner ID, and it must be from the same account where the new API key is created. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\": \"MyKey1\"}' ```
+Create a new API key. There is no default value for the owner ID, and it must be from the same account where the new API key is created. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\": \"MyKey1\"}' ```
### Example
```java
@@ -198,7 +198,7 @@ Name | Type | Description | Notes
Delete the API key.
-Delete an API key. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id} \\ -H 'Authorization: Bearer <api_key>' ```
+Delete an API key. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -255,7 +255,7 @@ Name | Type | Description | Notes
Get API key details.
-Retrieve API key details. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id} \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve details of an API key. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -312,7 +312,7 @@ Name | Type | Description | Notes
Get all API keys.
-Retrieve API keys in an array, optionally filtered by the owner. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve an array of API keys, optionally filtered by the owner. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -334,8 +334,8 @@ Bearer.setApiKey("YOUR API KEY");
TenantAccountsApiKeysApi apiInstance = new TenantAccountsApiKeysApi();
String accountId = "accountId_example"; // String | Account ID.
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
String keyEq = "keyEq_example"; // String | API key filter. Do not include the private portion of the API key (the last 32 characters).
String ownerEq = "ownerEq_example"; // String | Owner name filter.
@@ -354,8 +354,8 @@ Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| Account ID. |
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
**keyEq** | **String**| API key filter. Do not include the private portion of the API key (the last 32 characters). | [optional]
**ownerEq** | **String**| Owner name filter. | [optional]
@@ -377,9 +377,9 @@ Name | Type | Description | Notes
# **getGroupsOfAccountApikey**
> GroupSummaryList getGroupsOfAccountApikey(accountId, apikeyId, limit, after, order, include)
-Get groups associated with the API key.
+Get policy groups of an API key.
-Retrieve groups associated with the API key. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/groups \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve an array of policy groups associated with an API key. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/groups \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -402,8 +402,8 @@ TenantAccountsApiKeysApi apiInstance = new TenantAccountsApiKeysApi();
String accountId = "accountId_example"; // String | Account ID.
String apikeyId = "apikeyId_example"; // String | The ID of the API key.
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
try {
GroupSummaryList result = apiInstance.getGroupsOfAccountApikey(accountId, apikeyId, limit, after, order, include);
@@ -421,8 +421,8 @@ Name | Type | Description | Notes
**accountId** | **String**| Account ID. |
**apikeyId** | **String**| The ID of the API key. |
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
### Return type
@@ -444,7 +444,7 @@ Name | Type | Description | Notes
Remove API key from groups.
-Remove API key from groups. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/groups \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Remove API key from groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/groups \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -503,7 +503,7 @@ Name | Type | Description | Notes
Remove API key from groups.
-Remove an API key from groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/groups/remove \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Remove an API key from groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/groups/remove \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -562,7 +562,7 @@ Name | Type | Description | Notes
Reset the secret key.
-Reset the secret key of the API key. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/reset-secret \\ -H 'Authorization: Bearer <api_key>' ```
+Reset the secret key of the API key. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/reset-secret \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -621,7 +621,7 @@ Name | Type | Description | Notes
Update API key details.
-Update API key details. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id} \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\": \"TestApiKey25\"}' ```
+Update API key details. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id} \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\": \"TestApiKey25\"}' ```
### Example
```java
diff --git a/backends/pelioncloud_devicemanagement/docs/TenantAccountsApplicationsApi.md b/backends/pelioncloud_devicemanagement/docs/TenantAccountsApplicationsApi.md
new file mode 100644
index 000000000..955ec333b
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/TenantAccountsApplicationsApi.md
@@ -0,0 +1,804 @@
+# TenantAccountsApplicationsApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**addAccountApplicationToGroups**](TenantAccountsApplicationsApi.md#addAccountApplicationToGroups) | **POST** v3/accounts/{account_id}/applications/{application_id}/groups/add | Add application to a list of groups.
+[**createAccountApplication**](TenantAccountsApplicationsApi.md#createAccountApplication) | **POST** v3/accounts/{account_id}/applications | Create a new application.
+[**createAccountApplicationAccessKey**](TenantAccountsApplicationsApi.md#createAccountApplicationAccessKey) | **POST** v3/accounts/{account_id}/applications/{application_id}/access-keys | Create a new application access key.
+[**deleteAccountApplication**](TenantAccountsApplicationsApi.md#deleteAccountApplication) | **DELETE** v3/accounts/{account_id}/applications/{application_id} | Delete application.
+[**deleteAccountApplicationAccessKey**](TenantAccountsApplicationsApi.md#deleteAccountApplicationAccessKey) | **DELETE** v3/accounts/{account_id}/applications/{application_id}/access-keys/{access_key_id} | Delete access key associated with the application.
+[**getAccountApplication**](TenantAccountsApplicationsApi.md#getAccountApplication) | **GET** v3/accounts/{account_id}/applications/{application_id} | Get application.
+[**getAccountApplicationAccessKey**](TenantAccountsApplicationsApi.md#getAccountApplicationAccessKey) | **GET** v3/accounts/{account_id}/applications/{application_id}/access-keys/{access_key_id} | Get access key.
+[**getAllAccountApplicationAccessKeys**](TenantAccountsApplicationsApi.md#getAllAccountApplicationAccessKeys) | **GET** v3/accounts/{account_id}/applications/{application_id}/access-keys | Get all access keys associated with the application.
+[**getAllAccountApplications**](TenantAccountsApplicationsApi.md#getAllAccountApplications) | **GET** v3/accounts/{account_id}/applications | Get all applications.
+[**getGroupsOfAccountApplication**](TenantAccountsApplicationsApi.md#getGroupsOfAccountApplication) | **GET** v3/accounts/{account_id}/applications/{application_id}/groups | Get policy groups of an application.
+[**removeAccountApplicationFromGroups**](TenantAccountsApplicationsApi.md#removeAccountApplicationFromGroups) | **POST** v3/accounts/{account_id}/applications/{application_id}/groups/remove | Remove application from groups.
+[**updateAccountApplication**](TenantAccountsApplicationsApi.md#updateAccountApplication) | **PUT** v3/accounts/{account_id}/applications/{application_id} | Update application details.
+[**updateAccountApplicationAccessKey**](TenantAccountsApplicationsApi.md#updateAccountApplicationAccessKey) | **PUT** v3/accounts/{account_id}/applications/{application_id}/access-keys/{access_key_id} | Update access key details.
+
+
+
+# **addAccountApplicationToGroups**
+> Void addAccountApplicationToGroups(accountId, applicationId, body)
+
+Add application to a list of groups.
+
+Add application to groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id}/groups/add \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsApplicationsApi apiInstance = new TenantAccountsApplicationsApi();
+String accountId = "accountId_example"; // String | The ID of the account to retrieve.
+String applicationId = "applicationId_example"; // String | The ID of the application to add to the group.
+GroupIdList body = new GroupIdList(); // GroupIdList | A list of IDs of the groups to update.
+try {
+ Void result = apiInstance.addAccountApplicationToGroups(accountId, applicationId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsApplicationsApi#addAccountApplicationToGroups");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account to retrieve. |
+ **applicationId** | **String**| The ID of the application to add to the group. |
+ **body** | [**GroupIdList**](GroupIdList.md)| A list of IDs of the groups to update. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+
+# **createAccountApplication**
+> Application createAccountApplication(accountId, body)
+
+Create a new application.
+
+Create a new application. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications -d '{\"name\": \"MyApplication1\"}' \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsApplicationsApi apiInstance = new TenantAccountsApplicationsApi();
+String accountId = "accountId_example"; // String | The ID of the account to retrieve.
+Application body = new Application(); // Application | The details of the application to create.
+try {
+ Application result = apiInstance.createAccountApplication(accountId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsApplicationsApi#createAccountApplication");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account to retrieve. |
+ **body** | [**Application**](Application.md)| The details of the application to create. |
+
+### Return type
+
+[**Application**](Application.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+
+# **createAccountApplicationAccessKey**
+> AccessKey createAccountApplicationAccessKey(accountId, applicationId, body)
+
+Create a new application access key.
+
+Create a new access key for the application. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id}/access-keys -d '{\"name\": \"MyKey1\"}' \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsApplicationsApi apiInstance = new TenantAccountsApplicationsApi();
+String accountId = "accountId_example"; // String | The ID of the account to retrieve.
+String applicationId = "applicationId_example"; // String | The ID of the application.
+AccessKey body = new AccessKey(); // AccessKey | The details of the access key to create.
+try {
+ AccessKey result = apiInstance.createAccountApplicationAccessKey(accountId, applicationId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsApplicationsApi#createAccountApplicationAccessKey");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account to retrieve. |
+ **applicationId** | **String**| The ID of the application. |
+ **body** | [**AccessKey**](AccessKey.md)| The details of the access key to create. |
+
+### Return type
+
+[**AccessKey**](AccessKey.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+
+# **deleteAccountApplication**
+> Void deleteAccountApplication(accountId, applicationId)
+
+Delete application.
+
+Delete the application. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsApplicationsApi apiInstance = new TenantAccountsApplicationsApi();
+String accountId = "accountId_example"; // String | The ID of the account to retrieve.
+String applicationId = "applicationId_example"; // String | The ID of the application to delete.
+try {
+ Void result = apiInstance.deleteAccountApplication(accountId, applicationId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsApplicationsApi#deleteAccountApplication");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account to retrieve. |
+ **applicationId** | **String**| The ID of the application to delete. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **deleteAccountApplicationAccessKey**
+> Void deleteAccountApplicationAccessKey(accountId, applicationId, accessKeyId)
+
+Delete access key associated with the application.
+
+Delete the access key associated with the application. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id}/access-keys/{access_key_id} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsApplicationsApi apiInstance = new TenantAccountsApplicationsApi();
+String accountId = "accountId_example"; // String | The ID of the account to retrieve.
+String applicationId = "applicationId_example"; // String | The ID of the application.
+String accessKeyId = "accessKeyId_example"; // String | The ID of the access key to delete.
+try {
+ Void result = apiInstance.deleteAccountApplicationAccessKey(accountId, applicationId, accessKeyId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsApplicationsApi#deleteAccountApplicationAccessKey");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account to retrieve. |
+ **applicationId** | **String**| The ID of the application. |
+ **accessKeyId** | **String**| The ID of the access key to delete. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getAccountApplication**
+> Application getAccountApplication(accountId, applicationId)
+
+Get application.
+
+Retrieve details of an application. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsApplicationsApi apiInstance = new TenantAccountsApplicationsApi();
+String accountId = "accountId_example"; // String | The ID of the account to retrieve.
+String applicationId = "applicationId_example"; // String | The ID of the application to retrieve.
+try {
+ Application result = apiInstance.getAccountApplication(accountId, applicationId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsApplicationsApi#getAccountApplication");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account to retrieve. |
+ **applicationId** | **String**| The ID of the application to retrieve. |
+
+### Return type
+
+[**Application**](Application.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getAccountApplicationAccessKey**
+> AccessKey getAccountApplicationAccessKey(accountId, applicationId, accessKeyId)
+
+Get access key.
+
+Retrieve details of an access key associated with the application. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id}/access-keys/{access_key_id} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsApplicationsApi apiInstance = new TenantAccountsApplicationsApi();
+String accountId = "accountId_example"; // String | The ID of the account to retrieve.
+String applicationId = "applicationId_example"; // String | The ID of the application.
+String accessKeyId = "accessKeyId_example"; // String | The ID of the access key to retrieve.
+try {
+ AccessKey result = apiInstance.getAccountApplicationAccessKey(accountId, applicationId, accessKeyId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsApplicationsApi#getAccountApplicationAccessKey");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account to retrieve. |
+ **applicationId** | **String**| The ID of the application. |
+ **accessKeyId** | **String**| The ID of the access key to retrieve. |
+
+### Return type
+
+[**AccessKey**](AccessKey.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getAllAccountApplicationAccessKeys**
+> AccessKeyList getAllAccountApplicationAccessKeys(accountId, applicationId, limit, after, order, include, statusEq)
+
+Get all access keys associated with the application.
+
+Retrieve an array of access keys associated with the application. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id}/access-keys \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsApplicationsApi apiInstance = new TenantAccountsApplicationsApi();
+String accountId = "accountId_example"; // String | The ID of the account to retrieve.
+String applicationId = "applicationId_example"; // String | The ID of the application.
+Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
+String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
+String statusEq = "statusEq_example"; // String | Status filter.
+try {
+ AccessKeyList result = apiInstance.getAllAccountApplicationAccessKeys(accountId, applicationId, limit, after, order, include, statusEq);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsApplicationsApi#getAllAccountApplicationAccessKeys");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account to retrieve. |
+ **applicationId** | **String**| The ID of the application. |
+ **limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
+ **statusEq** | **String**| Status filter. | [optional]
+
+### Return type
+
+[**AccessKeyList**](AccessKeyList.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getAllAccountApplications**
+> ApplicationList getAllAccountApplications(accountId, limit, after, order, include, statusEq)
+
+Get all applications.
+
+Retrieve an array of applications. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsApplicationsApi apiInstance = new TenantAccountsApplicationsApi();
+String accountId = "accountId_example"; // String | The ID of the account to retrieve.
+Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
+String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
+String statusEq = "statusEq_example"; // String | Status filter.
+try {
+ ApplicationList result = apiInstance.getAllAccountApplications(accountId, limit, after, order, include, statusEq);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsApplicationsApi#getAllAccountApplications");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account to retrieve. |
+ **limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
+ **statusEq** | **String**| Status filter. | [optional]
+
+### Return type
+
+[**ApplicationList**](ApplicationList.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getGroupsOfAccountApplication**
+> GroupSummaryList getGroupsOfAccountApplication(accountId, applicationId, limit, after, order, include)
+
+Get policy groups of an application.
+
+Retrieve an array of policy groups associated with an application. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id}/groups \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsApplicationsApi apiInstance = new TenantAccountsApplicationsApi();
+String accountId = "accountId_example"; // String | The ID of the account to retrieve.
+String applicationId = "applicationId_example"; // String | The ID of the application.
+Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
+String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
+try {
+ GroupSummaryList result = apiInstance.getGroupsOfAccountApplication(accountId, applicationId, limit, after, order, include);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsApplicationsApi#getGroupsOfAccountApplication");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account to retrieve. |
+ **applicationId** | **String**| The ID of the application. |
+ **limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
+
+### Return type
+
+[**GroupSummaryList**](GroupSummaryList.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **removeAccountApplicationFromGroups**
+> Void removeAccountApplicationFromGroups(accountId, applicationId, body)
+
+Remove application from groups.
+
+Remove application from groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id}/groups/remove \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsApplicationsApi apiInstance = new TenantAccountsApplicationsApi();
+String accountId = "accountId_example"; // String | The ID of the account to retrieve.
+String applicationId = "applicationId_example"; // String | The ID of the application to remove from the group.
+GroupIdList body = new GroupIdList(); // GroupIdList | A list of IDs of the groups to update.
+try {
+ Void result = apiInstance.removeAccountApplicationFromGroups(accountId, applicationId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsApplicationsApi#removeAccountApplicationFromGroups");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account to retrieve. |
+ **applicationId** | **String**| The ID of the application to remove from the group. |
+ **body** | [**GroupIdList**](GroupIdList.md)| A list of IDs of the groups to update. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+
+# **updateAccountApplication**
+> ApiKeyInfoResp updateAccountApplication(accountId, applicationId, body)
+
+Update application details.
+
+Update application details. <b>Note:</b> This endpoint is restricted to administrators. **Example:** `curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id} \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\": \"TestApplication25\"}' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsApplicationsApi apiInstance = new TenantAccountsApplicationsApi();
+String accountId = "accountId_example"; // String | The ID of the account to retrieve.
+String applicationId = "applicationId_example"; // String | The ID of the application to update.
+Application body = new Application(); // Application | New applicationattributes to store.
+try {
+ ApiKeyInfoResp result = apiInstance.updateAccountApplication(accountId, applicationId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsApplicationsApi#updateAccountApplication");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account to retrieve. |
+ **applicationId** | **String**| The ID of the application to update. |
+ **body** | [**Application**](Application.md)| New applicationattributes to store. |
+
+### Return type
+
+[**ApiKeyInfoResp**](ApiKeyInfoResp.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **updateAccountApplicationAccessKey**
+> AccessKey updateAccountApplicationAccessKey(accountId, applicationId, accessKeyId, body)
+
+Update access key details.
+
+Update access key details. <b>Note:</b> This endpoint is restricted to administrators. **Example:** `curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id}/access-keys/{access_key_id} \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\": \"TestAccessKey\"}' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsApplicationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsApplicationsApi apiInstance = new TenantAccountsApplicationsApi();
+String accountId = "accountId_example"; // String | The ID of the account to retrieve.
+String applicationId = "applicationId_example"; // String | The ID of the application.
+String accessKeyId = "accessKeyId_example"; // String | The ID of the access key to update.
+AccessKey body = new AccessKey(); // AccessKey | New access key attributes to store.
+try {
+ AccessKey result = apiInstance.updateAccountApplicationAccessKey(accountId, applicationId, accessKeyId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsApplicationsApi#updateAccountApplicationAccessKey");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account to retrieve. |
+ **applicationId** | **String**| The ID of the application. |
+ **accessKeyId** | **String**| The ID of the access key to update. |
+ **body** | [**AccessKey**](AccessKey.md)| New access key attributes to store. |
+
+### Return type
+
+[**AccessKey**](AccessKey.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/TenantAccountsEmailNotificationLogsApi.md b/backends/pelioncloud_devicemanagement/docs/TenantAccountsEmailNotificationLogsApi.md
index 21515ede6..8950cfdaf 100644
--- a/backends/pelioncloud_devicemanagement/docs/TenantAccountsEmailNotificationLogsApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/TenantAccountsEmailNotificationLogsApi.md
@@ -4,16 +4,17 @@ All URIs are relative to *https://api.us-east-1.mbedcloud.com*
Method | HTTP request | Description
------------- | ------------- | -------------
-[**getAccountNofificationEntries**](TenantAccountsEmailNotificationLogsApi.md#getAccountNofificationEntries) | **GET** v3/accounts/{account_id}/notifications | Get the notification events of an account.
+[**getAccountNofificationEntries**](TenantAccountsEmailNotificationLogsApi.md#getAccountNofificationEntries) | **GET** v3/accounts/{account_id}/notifications | Get email notifications.
+[**getAccountNofificationEntry**](TenantAccountsEmailNotificationLogsApi.md#getAccountNofificationEntry) | **GET** v3/accounts/{account_id}/notifications/{notification_id} | Get an email notification.
# **getAccountNofificationEntries**
> NotificationEntryList getAccountNofificationEntries(accountId, limit, after, order)
-Get the notification events of an account.
+Get email notifications.
-Retrieve notifications.
+Retrieve an array of email notification logs. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -35,8 +36,8 @@ Bearer.setApiKey("YOUR API KEY");
TenantAccountsEmailNotificationLogsApi apiInstance = new TenantAccountsEmailNotificationLogsApi();
String accountId = "accountId_example"; // String | Account ID.
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
try {
NotificationEntryList result = apiInstance.getAccountNofificationEntries(accountId, limit, after, order);
System.out.println(result);
@@ -52,8 +53,8 @@ Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| Account ID. |
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
### Return type
@@ -68,3 +69,60 @@ Name | Type | Description | Notes
- **Content-Type**: Not defined
- **Accept**: application/json
+
+# **getAccountNofificationEntry**
+> NotificationEntry getAccountNofificationEntry(accountId, notificationId)
+
+Get an email notification.
+
+Retrieve an email notifications log entry. <b>Note:</b> This endpoint is restricted to administrators.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsEmailNotificationLogsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsEmailNotificationLogsApi apiInstance = new TenantAccountsEmailNotificationLogsApi();
+String accountId = "accountId_example"; // String | The ID of the account for which this notification should be retrieved.
+String notificationId = "notificationId_example"; // String | The ID of the notification entry to be retrieved.
+try {
+ NotificationEntry result = apiInstance.getAccountNofificationEntry(accountId, notificationId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsEmailNotificationLogsApi#getAccountNofificationEntry");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account for which this notification should be retrieved. |
+ **notificationId** | **String**| The ID of the notification entry to be retrieved. |
+
+### Return type
+
+[**NotificationEntry**](NotificationEntry.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/TenantAccountsEntitlementLimitationsApi.md b/backends/pelioncloud_devicemanagement/docs/TenantAccountsEntitlementLimitationsApi.md
new file mode 100644
index 000000000..73a96093a
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/TenantAccountsEntitlementLimitationsApi.md
@@ -0,0 +1,124 @@
+# TenantAccountsEntitlementLimitationsApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**aggregatorGetAccountLimitation**](TenantAccountsEntitlementLimitationsApi.md#aggregatorGetAccountLimitation) | **GET** v3/accounts/{account_id}/limitations/{limitation_id} | Get an entitlement limitation.
+[**aggregatorGetAccountLimitations**](TenantAccountsEntitlementLimitationsApi.md#aggregatorGetAccountLimitations) | **GET** v3/accounts/{account_id}/limitations | Get entitlement limitations.
+
+
+
+# **aggregatorGetAccountLimitation**
+> AccountLimitation aggregatorGetAccountLimitation(accountId, limitationId)
+
+Get an entitlement limitation.
+
+Retrieve an entitlement limitation. <b>Note:</b> This endpoint is restricted to administrators.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsEntitlementLimitationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsEntitlementLimitationsApi apiInstance = new TenantAccountsEntitlementLimitationsApi();
+String accountId = "accountId_example"; // String | The ID of the account.
+String limitationId = "limitationId_example"; // String | The ID of the limitation to be fetched.
+try {
+ AccountLimitation result = apiInstance.aggregatorGetAccountLimitation(accountId, limitationId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsEntitlementLimitationsApi#aggregatorGetAccountLimitation");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account. |
+ **limitationId** | **String**| The ID of the limitation to be fetched. |
+
+### Return type
+
+[**AccountLimitation**](AccountLimitation.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **aggregatorGetAccountLimitations**
+> AccountLimitationList aggregatorGetAccountLimitations(accountId, inheritedEq)
+
+Get entitlement limitations.
+
+Retrieve an array of entitlement limitations. <b>Note:</b> This endpoint is restricted to administrators.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsEntitlementLimitationsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsEntitlementLimitationsApi apiInstance = new TenantAccountsEntitlementLimitationsApi();
+String accountId = "accountId_example"; // String | The ID of the account.
+String inheritedEq = "inheritedEq_example"; // String | Filter for finding account limitations by inheritance. True returns also inherited limitations. False returns only non-inherited ones.
+try {
+ AccountLimitationList result = apiInstance.aggregatorGetAccountLimitations(accountId, inheritedEq);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsEntitlementLimitationsApi#aggregatorGetAccountLimitations");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account. |
+ **inheritedEq** | **String**| Filter for finding account limitations by inheritance. True returns also inherited limitations. False returns only non-inherited ones. | [optional]
+
+### Return type
+
+[**AccountLimitationList**](AccountLimitationList.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/TenantAccountsIdentityProvidersApi.md b/backends/pelioncloud_devicemanagement/docs/TenantAccountsIdentityProvidersApi.md
index e0a680fcd..b6cfb67ea 100644
--- a/backends/pelioncloud_devicemanagement/docs/TenantAccountsIdentityProvidersApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/TenantAccountsIdentityProvidersApi.md
@@ -8,9 +8,9 @@ Method | HTTP request | Description
[**deleteAccountIdentityProvider**](TenantAccountsIdentityProvidersApi.md#deleteAccountIdentityProvider) | **DELETE** v3/accounts/{account_id}/identity-providers/{identity_provider_id} | Delete an identity provider by ID.
[**deleteAccountSpCertificate**](TenantAccountsIdentityProvidersApi.md#deleteAccountSpCertificate) | **POST** v3/accounts/{account_id}/identity-providers/{identity_provider_id}/delete-sp-certificate | Delete the service provider certificate.
[**generateAccountSpCertificate**](TenantAccountsIdentityProvidersApi.md#generateAccountSpCertificate) | **POST** v3/accounts/{account_id}/identity-providers/{identity_provider_id}/generate-sp-certificate | Generate a new service provider certificate.
-[**getAccountIdentityProvider**](TenantAccountsIdentityProvidersApi.md#getAccountIdentityProvider) | **GET** v3/accounts/{account_id}/identity-providers/{identity_provider_id} | Retrieve identity provider by ID.
+[**getAccountIdentityProvider**](TenantAccountsIdentityProvidersApi.md#getAccountIdentityProvider) | **GET** v3/accounts/{account_id}/identity-providers/{identity_provider_id} | Get an identity provider.
[**getAllAccountIdentityProviders**](TenantAccountsIdentityProvidersApi.md#getAllAccountIdentityProviders) | **GET** v3/accounts/{account_id}/identity-providers | Get all identity providers.
-[**refreshAccountJwks**](TenantAccountsIdentityProvidersApi.md#refreshAccountJwks) | **POST** v3/accounts/{account_id}/identity-providers/{identity_provider_id}/refresh-jwks | Refreshes the OIDC signing keys.
+[**refreshAccountJwks**](TenantAccountsIdentityProvidersApi.md#refreshAccountJwks) | **POST** v3/accounts/{account_id}/identity-providers/{identity_provider_id}/refresh-jwks | Refresh the OIDC signing keys.
[**updateAccountIdentityProvider**](TenantAccountsIdentityProvidersApi.md#updateAccountIdentityProvider) | **PUT** v3/accounts/{account_id}/identity-providers/{identity_provider_id} | Update an existing identity provider.
@@ -20,7 +20,7 @@ Method | HTTP request | Description
Create a new identity provider.
-Create a new identity provider.
+Create a new identity provider. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -79,7 +79,7 @@ Name | Type | Description | Notes
Delete an identity provider by ID.
-Delete an identity provider by ID.
+Delete an identity provider by ID. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -136,7 +136,7 @@ Name | Type | Description | Notes
Delete the service provider certificate.
-Delete a service provider certificate.
+Delete a service provider certificate. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -193,7 +193,7 @@ Name | Type | Description | Notes
Generate a new service provider certificate.
-Generate a new service provider certificate.
+Generate a new service provider certificate. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -250,9 +250,9 @@ Name | Type | Description | Notes
# **getAccountIdentityProvider**
> IdentityProviderInfo getAccountIdentityProvider(accountId, identityProviderId)
-Retrieve identity provider by ID.
+Get an identity provider.
-Manage identity providers of a tenant account.
+Retrieve an identity provider. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -309,7 +309,7 @@ Name | Type | Description | Notes
Get all identity providers.
-Retrieve identity providers in an array.
+Retrieve an array of identity providers. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -331,8 +331,8 @@ Bearer.setApiKey("YOUR API KEY");
TenantAccountsIdentityProvidersApi apiInstance = new TenantAccountsIdentityProvidersApi();
String accountId = "accountId_example"; // String | The ID of the account.
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
try {
IdentityProviderList result = apiInstance.getAllAccountIdentityProviders(accountId, limit, after, order, include);
@@ -349,8 +349,8 @@ Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
### Return type
@@ -370,9 +370,9 @@ Name | Type | Description | Notes
# **refreshAccountJwks**
> IdentityProviderInfo refreshAccountJwks(accountId, identityProviderId)
-Refreshes the OIDC signing keys.
+Refresh the OIDC signing keys.
-Refreshes an OIDC IdP's signing keys.
+Refresh an OIDC IdP's signing keys. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -429,7 +429,7 @@ Name | Type | Description | Notes
Update an existing identity provider.
-Update an existing identity provider.
+Update an existing identity provider. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
diff --git a/backends/pelioncloud_devicemanagement/docs/TenantAccountsPolicyGroupsApi.md b/backends/pelioncloud_devicemanagement/docs/TenantAccountsPolicyGroupsApi.md
index 8345536d4..69778fe1c 100644
--- a/backends/pelioncloud_devicemanagement/docs/TenantAccountsPolicyGroupsApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/TenantAccountsPolicyGroupsApi.md
@@ -6,17 +6,20 @@ Method | HTTP request | Description
------------- | ------------- | -------------
[**addApiKeysToAccountGroup**](TenantAccountsPolicyGroupsApi.md#addApiKeysToAccountGroup) | **POST** v3/accounts/{account_id}/policy-groups/{group_id}/api-keys | Add API keys to Account group.
[**addListedApiKeysToAccountGroup**](TenantAccountsPolicyGroupsApi.md#addListedApiKeysToAccountGroup) | **POST** v3/accounts/{account_id}/policy-groups/{group_id}/api-keys/add | Add API keys to account group.
+[**addListedApplicationsToAccountGroup**](TenantAccountsPolicyGroupsApi.md#addListedApplicationsToAccountGroup) | **POST** v3/accounts/{account_id}/policy-groups/{group_id}/applications/add | Add applications to account group.
[**addListedUsersToAccountGroup**](TenantAccountsPolicyGroupsApi.md#addListedUsersToAccountGroup) | **POST** v3/accounts/{account_id}/policy-groups/{group_id}/users/add | Add users to account group.
[**addSubjectsToAccountGroup**](TenantAccountsPolicyGroupsApi.md#addSubjectsToAccountGroup) | **POST** v3/accounts/{account_id}/policy-groups/{group_id} | Add members to a group.
[**addUsersToAccountGroup**](TenantAccountsPolicyGroupsApi.md#addUsersToAccountGroup) | **POST** v3/accounts/{account_id}/policy-groups/{group_id}/users | Add users to account group.
[**createAccountGroup**](TenantAccountsPolicyGroupsApi.md#createAccountGroup) | **POST** v3/accounts/{account_id}/policy-groups | Create a new group.
[**deleteAccountGroup**](TenantAccountsPolicyGroupsApi.md#deleteAccountGroup) | **DELETE** v3/accounts/{account_id}/policy-groups/{group_id} | Delete a group.
-[**getAccountGroupSummary**](TenantAccountsPolicyGroupsApi.md#getAccountGroupSummary) | **GET** v3/accounts/{account_id}/policy-groups/{group_id} | Get group information.
-[**getAllAccountGroups**](TenantAccountsPolicyGroupsApi.md#getAllAccountGroups) | **GET** v3/accounts/{account_id}/policy-groups | Get all group information.
-[**getApiKeysOfAccountGroup**](TenantAccountsPolicyGroupsApi.md#getApiKeysOfAccountGroup) | **GET** v3/accounts/{account_id}/policy-groups/{group_id}/api-keys | Get API keys of a group.
-[**getUsersOfAccountGroup**](TenantAccountsPolicyGroupsApi.md#getUsersOfAccountGroup) | **GET** v3/accounts/{account_id}/policy-groups/{group_id}/users | Get users of a group.
+[**getAccountGroupSummary**](TenantAccountsPolicyGroupsApi.md#getAccountGroupSummary) | **GET** v3/accounts/{account_id}/policy-groups/{group_id} | Get policy group.
+[**getAllAccountGroups**](TenantAccountsPolicyGroupsApi.md#getAllAccountGroups) | **GET** v3/accounts/{account_id}/policy-groups | Get policy groups.
+[**getApiKeysOfAccountGroup**](TenantAccountsPolicyGroupsApi.md#getApiKeysOfAccountGroup) | **GET** v3/accounts/{account_id}/policy-groups/{group_id}/api-keys | Get API keys in a group.
+[**getApplicationsOfAccountGroup**](TenantAccountsPolicyGroupsApi.md#getApplicationsOfAccountGroup) | **GET** v3/accounts/{account_id}/policy-groups/{group_id}/applications | Get applications in a group.
+[**getUsersOfAccountGroup**](TenantAccountsPolicyGroupsApi.md#getUsersOfAccountGroup) | **GET** v3/accounts/{account_id}/policy-groups/{group_id}/users | Get users in a policy group.
[**removeApiKeysFromAccountGroup**](TenantAccountsPolicyGroupsApi.md#removeApiKeysFromAccountGroup) | **DELETE** v3/accounts/{account_id}/policy-groups/{group_id}/api-keys | Remove API keys from a group.
[**removeListedApiKeysFromAccountGroup**](TenantAccountsPolicyGroupsApi.md#removeListedApiKeysFromAccountGroup) | **POST** v3/accounts/{account_id}/policy-groups/{group_id}/api-keys/remove | Remove API keys from a group.
+[**removeListedApplicationsFromAccountGroup**](TenantAccountsPolicyGroupsApi.md#removeListedApplicationsFromAccountGroup) | **POST** v3/accounts/{account_id}/policy-groups/{group_id}/applications/remove | Remove applications from a group.
[**removeListedUsersFromAccountGroup**](TenantAccountsPolicyGroupsApi.md#removeListedUsersFromAccountGroup) | **POST** v3/accounts/{account_id}/policy-groups/{group_id}/users/remove | Remove users from a group.
[**removeUsersFromAccountGroup**](TenantAccountsPolicyGroupsApi.md#removeUsersFromAccountGroup) | **DELETE** v3/accounts/{account_id}/policy-groups/{group_id}/users | Remove users from a group.
[**updateAccountGroupName**](TenantAccountsPolicyGroupsApi.md#updateAccountGroupName) | **PUT** v3/accounts/{account_id}/policy-groups/{group_id} | Update the group name.
@@ -24,11 +27,11 @@ Method | HTTP request | Description
# **addApiKeysToAccountGroup**
-> ApiKeyInfoRespList addApiKeysToAccountGroup(accountId, groupId, body)
+> GroupSummary addApiKeysToAccountGroup(accountId, groupId, body)
Add API keys to Account group.
-Add API keys to account groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/api-keys \\ -H 'Authorization: Bearer <api_key>' ```
+Add API keys to account groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/api-keys \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -52,7 +55,7 @@ String accountId = "accountId_example"; // String | The ID of the account.
String groupId = "groupId_example"; // String | The ID of the group to retrieve API keys for.
SubjectList body = new SubjectList(); // SubjectList | A list of API keys to add to the group.
try {
- ApiKeyInfoRespList result = apiInstance.addApiKeysToAccountGroup(accountId, groupId, body);
+ GroupSummary result = apiInstance.addApiKeysToAccountGroup(accountId, groupId, body);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling TenantAccountsPolicyGroupsApi#addApiKeysToAccountGroup");
@@ -70,7 +73,7 @@ Name | Type | Description | Notes
### Return type
-[**ApiKeyInfoRespList**](ApiKeyInfoRespList.md)
+[**GroupSummary**](GroupSummary.md)
### Authorization
@@ -83,11 +86,11 @@ Name | Type | Description | Notes
# **addListedApiKeysToAccountGroup**
-> ApiKeyInfoRespList addListedApiKeysToAccountGroup(accountId, groupId, body)
+> GroupSummary addListedApiKeysToAccountGroup(accountId, groupId, body)
Add API keys to account group.
-Add API keys to account groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/api-keys/add \\ -H 'Authorization: Bearer <api_key>' ```
+Add API keys to account groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/api-keys/add \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"apikeys\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]}' ```
### Example
```java
@@ -108,10 +111,10 @@ Bearer.setApiKey("YOUR API KEY");
TenantAccountsPolicyGroupsApi apiInstance = new TenantAccountsPolicyGroupsApi();
String accountId = "accountId_example"; // String | The ID of the account.
-String groupId = "groupId_example"; // String | The ID of the group to retrieve API keys for.
+String groupId = "groupId_example"; // String | The ID of the group to remove API keys from.
SubjectList body = new SubjectList(); // SubjectList | A list of API keys to add to the group.
try {
- ApiKeyInfoRespList result = apiInstance.addListedApiKeysToAccountGroup(accountId, groupId, body);
+ GroupSummary result = apiInstance.addListedApiKeysToAccountGroup(accountId, groupId, body);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling TenantAccountsPolicyGroupsApi#addListedApiKeysToAccountGroup");
@@ -124,12 +127,71 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **groupId** | **String**| The ID of the group to retrieve API keys for. |
+ **groupId** | **String**| The ID of the group to remove API keys from. |
**body** | [**SubjectList**](SubjectList.md)| A list of API keys to add to the group. |
### Return type
-[**ApiKeyInfoRespList**](ApiKeyInfoRespList.md)
+[**GroupSummary**](GroupSummary.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **addListedApplicationsToAccountGroup**
+> GroupSummary addListedApplicationsToAccountGroup(accountId, groupId, body)
+
+Add applications to account group.
+
+Add applications to account groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/applications/add \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"applications\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]}' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsPolicyGroupsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsPolicyGroupsApi apiInstance = new TenantAccountsPolicyGroupsApi();
+String accountId = "accountId_example"; // String | The ID of the account.
+String groupId = "groupId_example"; // String | The ID of the group to add applications to.
+SubjectList body = new SubjectList(); // SubjectList | A list of applications to add to the group.
+try {
+ GroupSummary result = apiInstance.addListedApplicationsToAccountGroup(accountId, groupId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsPolicyGroupsApi#addListedApplicationsToAccountGroup");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account. |
+ **groupId** | **String**| The ID of the group to add applications to. |
+ **body** | [**SubjectList**](SubjectList.md)| A list of applications to add to the group. |
+
+### Return type
+
+[**GroupSummary**](GroupSummary.md)
### Authorization
@@ -142,11 +204,11 @@ Name | Type | Description | Notes
# **addListedUsersToAccountGroup**
-> ApiKeyInfoRespList addListedUsersToAccountGroup(accountId, groupId, body)
+> GroupSummary addListedUsersToAccountGroup(accountId, groupId, body)
Add users to account group.
-Add users to account group. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/users/add \\ -H 'Authorization: Bearer <api_key>' ```
+Add users to account group. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/users/add \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -167,10 +229,10 @@ Bearer.setApiKey("YOUR API KEY");
TenantAccountsPolicyGroupsApi apiInstance = new TenantAccountsPolicyGroupsApi();
String accountId = "accountId_example"; // String | The ID of the account.
-String groupId = "groupId_example"; // String | The ID of the group to retrieve API keys for.
-SubjectList body = new SubjectList(); // SubjectList | A list of API keys to add to the group.
+String groupId = "groupId_example"; // String | The ID of the group to retrieve users for.
+SubjectList body = new SubjectList(); // SubjectList | A list of users to add to the group.
try {
- ApiKeyInfoRespList result = apiInstance.addListedUsersToAccountGroup(accountId, groupId, body);
+ GroupSummary result = apiInstance.addListedUsersToAccountGroup(accountId, groupId, body);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling TenantAccountsPolicyGroupsApi#addListedUsersToAccountGroup");
@@ -183,12 +245,12 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **groupId** | **String**| The ID of the group to retrieve API keys for. |
- **body** | [**SubjectList**](SubjectList.md)| A list of API keys to add to the group. |
+ **groupId** | **String**| The ID of the group to retrieve users for. |
+ **body** | [**SubjectList**](SubjectList.md)| A list of users to add to the group. |
### Return type
-[**ApiKeyInfoRespList**](ApiKeyInfoRespList.md)
+[**GroupSummary**](GroupSummary.md)
### Authorization
@@ -205,7 +267,7 @@ Name | Type | Description | Notes
Add members to a group.
-Add users and API keys to groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id} \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"users\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]}' ```
+Add users and API keys to groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id} \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"users\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]}' ```
### Example
```java
@@ -260,11 +322,11 @@ Name | Type | Description | Notes
# **addUsersToAccountGroup**
-> ApiKeyInfoRespList addUsersToAccountGroup(accountId, groupId, body)
+> GroupSummary addUsersToAccountGroup(accountId, groupId, body)
Add users to account group.
-Add users to account group. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/users \\ -H 'Authorization: Bearer <api_key>' ```
+Add users to account group. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/users \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -285,10 +347,10 @@ Bearer.setApiKey("YOUR API KEY");
TenantAccountsPolicyGroupsApi apiInstance = new TenantAccountsPolicyGroupsApi();
String accountId = "accountId_example"; // String | The ID of the account.
-String groupId = "groupId_example"; // String | The ID of the group to retrieve API keys for.
-SubjectList body = new SubjectList(); // SubjectList | A list of API keys to add to the group.
+String groupId = "groupId_example"; // String | The ID of the group to add users to.
+SubjectList body = new SubjectList(); // SubjectList | A list of user IDs to add to the group.
try {
- ApiKeyInfoRespList result = apiInstance.addUsersToAccountGroup(accountId, groupId, body);
+ GroupSummary result = apiInstance.addUsersToAccountGroup(accountId, groupId, body);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling TenantAccountsPolicyGroupsApi#addUsersToAccountGroup");
@@ -301,12 +363,12 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **groupId** | **String**| The ID of the group to retrieve API keys for. |
- **body** | [**SubjectList**](SubjectList.md)| A list of API keys to add to the group. |
+ **groupId** | **String**| The ID of the group to add users to. |
+ **body** | [**SubjectList**](SubjectList.md)| A list of user IDs to add to the group. |
### Return type
-[**ApiKeyInfoRespList**](ApiKeyInfoRespList.md)
+[**GroupSummary**](GroupSummary.md)
### Authorization
@@ -323,7 +385,7 @@ Name | Type | Description | Notes
Create a new group.
-Create a new group. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\": \"MyGroup1\"}' ```
+Create a new group. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\": \"MyGroup1\"}' ```
### Example
```java
@@ -380,7 +442,7 @@ Name | Type | Description | Notes
Delete a group.
-Delete a group. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id} \\ -H 'Authorization: Bearer <api_key>' ```
+Delete a group. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -435,9 +497,9 @@ Name | Type | Description | Notes
# **getAccountGroupSummary**
> GroupSummary getAccountGroupSummary(accountId, groupId)
-Get group information.
+Get policy group.
-Retrieve general information about the group. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id} \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve policy group details. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -492,9 +554,9 @@ Name | Type | Description | Notes
# **getAllAccountGroups**
> GroupSummaryList getAllAccountGroups(accountId, limit, after, order, include, nameEq)
-Get all group information.
+Get policy groups.
-Retrieve all group information. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve an array of policy groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -516,8 +578,8 @@ Bearer.setApiKey("YOUR API KEY");
TenantAccountsPolicyGroupsApi apiInstance = new TenantAccountsPolicyGroupsApi();
String accountId = "accountId_example"; // String | Account ID.
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
String nameEq = "nameEq_example"; // String | Filter for group name.
try {
@@ -535,8 +597,8 @@ Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| Account ID. |
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
**nameEq** | **String**| Filter for group name. | [optional]
@@ -557,9 +619,9 @@ Name | Type | Description | Notes
# **getApiKeysOfAccountGroup**
> ApiKeyInfoRespList getApiKeysOfAccountGroup(accountId, groupId, limit, after, order, include)
-Get API keys of a group.
+Get API keys in a group.
-List the API keys of the group with details. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/api-keys \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve an array of API keys associated with a policy group. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/api-keys \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -582,8 +644,8 @@ TenantAccountsPolicyGroupsApi apiInstance = new TenantAccountsPolicyGroupsApi();
String accountId = "accountId_example"; // String | Account ID.
String groupId = "groupId_example"; // String | The ID of the group to retrieve API keys for.
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
try {
ApiKeyInfoRespList result = apiInstance.getApiKeysOfAccountGroup(accountId, groupId, limit, after, order, include);
@@ -601,8 +663,8 @@ Name | Type | Description | Notes
**accountId** | **String**| Account ID. |
**groupId** | **String**| The ID of the group to retrieve API keys for. |
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
### Return type
@@ -613,6 +675,71 @@ Name | Type | Description | Notes
[Bearer](../README.md#Bearer)
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getApplicationsOfAccountGroup**
+> ApplicationList getApplicationsOfAccountGroup(accountId, groupId, limit, after, order, include)
+
+Get applications in a group.
+
+Retrieve an array of applications associated with a policy group. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/applications \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsPolicyGroupsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsPolicyGroupsApi apiInstance = new TenantAccountsPolicyGroupsApi();
+String accountId = "accountId_example"; // String | The ID of the account.
+String groupId = "groupId_example"; // String | The ID of the group to retrieve applications for.
+Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
+String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
+try {
+ ApplicationList result = apiInstance.getApplicationsOfAccountGroup(accountId, groupId, limit, after, order, include);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsPolicyGroupsApi#getApplicationsOfAccountGroup");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account. |
+ **groupId** | **String**| The ID of the group to retrieve applications for. |
+ **limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
+
+### Return type
+
+[**ApplicationList**](ApplicationList.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
### HTTP request headers
- **Content-Type**: Not defined
@@ -622,9 +749,9 @@ Name | Type | Description | Notes
# **getUsersOfAccountGroup**
> UserInfoRespList getUsersOfAccountGroup(accountId, groupId, limit, after, order, include, statusEq, statusIn, statusNin)
-Get users of a group.
+Get users in a policy group.
-List a group's users, with details. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/users \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve an array of users associated with a policy group. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/users \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -647,8 +774,8 @@ TenantAccountsPolicyGroupsApi apiInstance = new TenantAccountsPolicyGroupsApi();
String accountId = "accountId_example"; // String | Account ID.
String groupId = "groupId_example"; // String | The ID of the group to retrieve users for.
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
String statusEq = "statusEq_example"; // String | An optional filter to retrieve users by status.
String statusIn = "statusIn_example"; // String | An optional filter to retrieve users with a specified set of statuses.
@@ -669,8 +796,8 @@ Name | Type | Description | Notes
**accountId** | **String**| Account ID. |
**groupId** | **String**| The ID of the group to retrieve users for. |
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
**statusEq** | **String**| An optional filter to retrieve users by status. | [optional]
**statusIn** | **String**| An optional filter to retrieve users with a specified set of statuses. | [optional]
@@ -695,7 +822,7 @@ Name | Type | Description | Notes
Remove API keys from a group.
-Remove API keys from groups. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/api-keys \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"apikeys\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]}' ```
+Remove API keys from groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/api-keys \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"apikeys\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]}' ```
### Example
```java
@@ -754,7 +881,7 @@ Name | Type | Description | Notes
Remove API keys from a group.
-Remove API keys from groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/api-keys/remove \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"apikeys\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]}' ```
+Remove API keys from groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/api-keys/remove \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"apikeys\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]}' ```
### Example
```java
@@ -802,6 +929,65 @@ Name | Type | Description | Notes
[Bearer](../README.md#Bearer)
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+
+# **removeListedApplicationsFromAccountGroup**
+> GroupSummary removeListedApplicationsFromAccountGroup(accountId, groupId, body)
+
+Remove applications from a group.
+
+Remove applications from groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/applications/remove \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"applications\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]}' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsPolicyGroupsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsPolicyGroupsApi apiInstance = new TenantAccountsPolicyGroupsApi();
+String accountId = "accountId_example"; // String | The ID of the account.
+String groupId = "groupId_example"; // String | The ID of the group to remove applications from.
+SubjectList body = new SubjectList(); // SubjectList | A list of applications to remove from the group.
+try {
+ GroupSummary result = apiInstance.removeListedApplicationsFromAccountGroup(accountId, groupId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsPolicyGroupsApi#removeListedApplicationsFromAccountGroup");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account. |
+ **groupId** | **String**| The ID of the group to remove applications from. |
+ **body** | [**SubjectList**](SubjectList.md)| A list of applications to remove from the group. |
+
+### Return type
+
+[**GroupSummary**](GroupSummary.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
### HTTP request headers
- **Content-Type**: application/json
@@ -813,7 +999,7 @@ Name | Type | Description | Notes
Remove users from a group.
-Remove users from groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/users \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"users\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]}' ```
+Remove users from groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/users/remove \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"users\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]}' ```
### Example
```java
@@ -872,7 +1058,7 @@ Name | Type | Description | Notes
Remove users from a group.
-Remove users from groups. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/users \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"users\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]}' ```
+Remove users from groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/users \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"users\": [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]}' ```
### Example
```java
@@ -931,7 +1117,7 @@ Name | Type | Description | Notes
Update the group name.
-Update a group name. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/ \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\": \"TestGroup2\"}' ```
+Update a group name. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/ \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\": \"TestGroup2\"}' ```
### Example
```java
diff --git a/backends/pelioncloud_devicemanagement/docs/TenantAccountsUserInvitationsApi.md b/backends/pelioncloud_devicemanagement/docs/TenantAccountsUserInvitationsApi.md
index edcd5423c..03eb976cb 100644
--- a/backends/pelioncloud_devicemanagement/docs/TenantAccountsUserInvitationsApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/TenantAccountsUserInvitationsApi.md
@@ -7,7 +7,7 @@ Method | HTTP request | Description
[**createAccountInvitation**](TenantAccountsUserInvitationsApi.md#createAccountInvitation) | **POST** v3/accounts/{account_id}/user-invitations | Create a user invitation.
[**deleteAccountInvitation**](TenantAccountsUserInvitationsApi.md#deleteAccountInvitation) | **DELETE** v3/accounts/{account_id}/user-invitations/{invitation_id} | Delete a user invitation.
[**getAccountInvitation**](TenantAccountsUserInvitationsApi.md#getAccountInvitation) | **GET** v3/accounts/{account_id}/user-invitations/{invitation_id} | Details of a user invitation.
-[**getAllAccountInvitations**](TenantAccountsUserInvitationsApi.md#getAllAccountInvitations) | **GET** v3/accounts/{account_id}/user-invitations | Get the details of all user invitations.
+[**getAllAccountInvitations**](TenantAccountsUserInvitationsApi.md#getAllAccountInvitations) | **GET** v3/accounts/{account_id}/user-invitations | Get user invitations.
@@ -16,7 +16,7 @@ Method | HTTP request | Description
Create a user invitation.
-Invite a new or existing user. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accouns/{account_id}/user-invitations \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d {\"email\": \"myemail@company.com\"} ```
+Invite a new or existing user. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accouns/{account_id}/user-invitations \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d {\"email\": \"myemail@company.com\"} ```
### Example
```java
@@ -73,7 +73,7 @@ Name | Type | Description | Notes
Delete a user invitation.
-Delete an active user invitation sent to a new or existing user. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/user-invitations/{invitation_id} \\ -H 'Authorization: Bearer <api_key>' ```
+Delete an active user invitation sent to a new or existing user. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/user-invitations/{invitation_id} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -130,7 +130,7 @@ Name | Type | Description | Notes
Details of a user invitation.
-Retrieve details of an active user invitation sent for a new or existing user. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/user-invitations/{invitation_id} \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve details of an active user invitation sent for a new or existing user. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/user-invitations/{invitation_id} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -185,9 +185,9 @@ Name | Type | Description | Notes
# **getAllAccountInvitations**
> UserInvitationRespList getAllAccountInvitations(accountId, limit, after, order, loginProfilesEq)
-Get the details of all user invitations.
+Get user invitations.
-Retrieve details of all active user invitations sent for new or existing users. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/user-invitations \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve an array of active user invitations. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/user-invitations \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -209,8 +209,8 @@ Bearer.setApiKey("YOUR API KEY");
TenantAccountsUserInvitationsApi apiInstance = new TenantAccountsUserInvitationsApi();
String accountId = "accountId_example"; // String | Account ID.
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String loginProfilesEq = "loginProfilesEq_example"; // String | Filter to retrieve user invitations by a specified login profile.
try {
UserInvitationRespList result = apiInstance.getAllAccountInvitations(accountId, limit, after, order, loginProfilesEq);
@@ -227,8 +227,8 @@ Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| Account ID. |
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**loginProfilesEq** | **String**| Filter to retrieve user invitations by a specified login profile. | [optional]
### Return type
diff --git a/backends/pelioncloud_devicemanagement/docs/TenantAccountsUsersApi.md b/backends/pelioncloud_devicemanagement/docs/TenantAccountsUsersApi.md
index d6cf08ecb..42e99244b 100644
--- a/backends/pelioncloud_devicemanagement/docs/TenantAccountsUsersApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/TenantAccountsUsersApi.md
@@ -9,8 +9,9 @@ Method | HTTP request | Description
[**createAccountUser**](TenantAccountsUsersApi.md#createAccountUser) | **POST** v3/accounts/{account_id}/users | Create a new user.
[**deleteAccountUser**](TenantAccountsUsersApi.md#deleteAccountUser) | **DELETE** v3/accounts/{account_id}/users/{user_id} | Delete a user.
[**getAccountUser**](TenantAccountsUsersApi.md#getAccountUser) | **GET** v3/accounts/{account_id}/users/{user_id} | Details of the user.
-[**getAllAccountUsers**](TenantAccountsUsersApi.md#getAllAccountUsers) | **GET** v3/accounts/{account_id}/users | Get the details of all users.
-[**getGroupsOfAccountUser**](TenantAccountsUsersApi.md#getGroupsOfAccountUser) | **GET** v3/accounts/{account_id}/users/{user_id}/groups | Get user's groups.
+[**getAllAccountUsers**](TenantAccountsUsersApi.md#getAllAccountUsers) | **GET** v3/accounts/{account_id}/users | Get users.
+[**getGroupsOfAccountUser**](TenantAccountsUsersApi.md#getGroupsOfAccountUser) | **GET** v3/accounts/{account_id}/users/{user_id}/groups | Get policy groups for a user.
+[**removeAccountUserFromAccount**](TenantAccountsUsersApi.md#removeAccountUserFromAccount) | **POST** v3/accounts/{account_id}/users/{user_id}/remove | Remove user from the account.
[**removeAccountUserFromGroups**](TenantAccountsUsersApi.md#removeAccountUserFromGroups) | **DELETE** v3/accounts/{account_id}/users/{user_id}/groups | Remove user from groups.
[**removeAccountUserFromListedGroups**](TenantAccountsUsersApi.md#removeAccountUserFromListedGroups) | **POST** v3/accounts/{account_id}/users/{user_id}/groups/remove | Remove user from groups.
[**updateAccountUser**](TenantAccountsUsersApi.md#updateAccountUser) | **PUT** v3/accounts/{account_id}/users/{user_id} | Update user details.
@@ -23,7 +24,7 @@ Method | HTTP request | Description
Add user to a list of groups.
-Add user to groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id}/groups \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Add user to groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id}/groups \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -82,7 +83,7 @@ Name | Type | Description | Notes
Add user to a list of groups.
-Add a user to groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id}/groups/add \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Add a user to groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id}/groups/add \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -141,7 +142,7 @@ Name | Type | Description | Notes
Create a new user.
-Create or invite a new user to the account. Only email address is used; other attributes are set in the second step. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d {\"email\": \"myemail@company.com\"} ```
+Create or invite a new user to the account. Only email address is used; other attributes are set in the second step. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d {\"email\": \"myemail@company.com\"} ```
### Example
```java
@@ -200,7 +201,7 @@ Name | Type | Description | Notes
Delete a user.
-Delete a user. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id} \\ -H 'Authorization: Bearer <api_key>' ```
+Delete a user. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -257,7 +258,7 @@ Name | Type | Description | Notes
Details of the user.
-Retrieve user details. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id} \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve user details. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -312,9 +313,9 @@ Name | Type | Description | Notes
# **getAllAccountUsers**
> UserInfoRespList getAllAccountUsers(accountId, limit, after, order, include, emailEq, statusEq, statusIn, statusNin, loginProfilesEq)
-Get the details of all users.
+Get users.
-Retrieve details of all users. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve an array of users. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -336,8 +337,8 @@ Bearer.setApiKey("YOUR API KEY");
TenantAccountsUsersApi apiInstance = new TenantAccountsUsersApi();
String accountId = "accountId_example"; // String | Account ID.
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
String emailEq = "emailEq_example"; // String | Filter for email address.
String statusEq = "statusEq_example"; // String | Filter for status.
@@ -359,8 +360,8 @@ Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| Account ID. |
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
**emailEq** | **String**| Filter for email address. | [optional]
**statusEq** | **String**| Filter for status. | [optional]
@@ -385,9 +386,9 @@ Name | Type | Description | Notes
# **getGroupsOfAccountUser**
> GroupSummaryList getGroupsOfAccountUser(accountId, userId, limit, after, order, include)
-Get user's groups.
+Get policy groups for a user.
-Retrieve user's groups. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id}/groups \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve an array of policy groups associated with a user. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id}/groups \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -410,8 +411,8 @@ TenantAccountsUsersApi apiInstance = new TenantAccountsUsersApi();
String accountId = "accountId_example"; // String | Account ID.
String userId = "userId_example"; // String | The ID of the user.
Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
-String after = "after_example"; // String | The entity ID to fetch after the given one.
-String order = "ASC"; // String | Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
try {
GroupSummaryList result = apiInstance.getGroupsOfAccountUser(accountId, userId, limit, after, order, include);
@@ -429,8 +430,8 @@ Name | Type | Description | Notes
**accountId** | **String**| Account ID. |
**userId** | **String**| The ID of the user. |
**limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
- **after** | **String**| The entity ID to fetch after the given one. | [optional]
- **order** | **String**| Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
**include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
### Return type
@@ -441,6 +442,63 @@ Name | Type | Description | Notes
[Bearer](../README.md#Bearer)
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **removeAccountUserFromAccount**
+> Void removeAccountUserFromAccount(accountId, userId)
+
+Remove user from the account.
+
+Remove user from the account. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id}/remove \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantAccountsUsersApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantAccountsUsersApi apiInstance = new TenantAccountsUsersApi();
+String accountId = "accountId_example"; // String | The ID of the account.
+String userId = "userId_example"; // String | The ID of the user to remove from the account.
+try {
+ Void result = apiInstance.removeAccountUserFromAccount(accountId, userId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantAccountsUsersApi#removeAccountUserFromAccount");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| The ID of the account. |
+ **userId** | **String**| The ID of the user to remove from the account. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
### HTTP request headers
- **Content-Type**: Not defined
@@ -452,7 +510,7 @@ Name | Type | Description | Notes
Remove user from groups.
-Remove user from groups. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id}/groups \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Remove user from groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id}/groups \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -511,7 +569,7 @@ Name | Type | Description | Notes
Remove user from groups.
-Remove a user from groups. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id}/groups/remove \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
+Remove a user from groups. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id}/groups/remove \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]' ```
### Example
```java
@@ -570,7 +628,7 @@ Name | Type | Description | Notes
Update user details.
-Update user details. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id} \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"username\": \"myusername\"}' ```
+Update user details. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id} \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"username\": \"myusername\"}' ```
### Example
```java
@@ -629,7 +687,7 @@ Name | Type | Description | Notes
Validate the user email.
-Validate user email. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id}/validate-email \\ -H 'Authorization: Bearer <api_key>' ```
+Validate user email. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/users/{user_id}/validate-email \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
diff --git a/backends/pelioncloud_devicemanagement/docs/TenantSecurityAndIdentityCertificatesApi.md b/backends/pelioncloud_devicemanagement/docs/TenantSecurityAndIdentityCertificatesApi.md
new file mode 100644
index 000000000..def63f0f1
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/TenantSecurityAndIdentityCertificatesApi.md
@@ -0,0 +1,330 @@
+# TenantSecurityAndIdentityCertificatesApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**addAccountCertificate**](TenantSecurityAndIdentityCertificatesApi.md#addAccountCertificate) | **POST** v3/accounts/{account_id}/trusted-certificates | Upload new trusted certificate.
+[**deleteAccountCertificate**](TenantSecurityAndIdentityCertificatesApi.md#deleteAccountCertificate) | **DELETE** v3/accounts/{account_id}/trusted-certificates/{cert_id} | Delete a trusted certificate by ID.
+[**getAccountCertificate**](TenantSecurityAndIdentityCertificatesApi.md#getAccountCertificate) | **GET** v3/accounts/{account_id}/trusted-certificates/{cert_id} | Get a trusted certificate.
+[**getAllAccountCertificates**](TenantSecurityAndIdentityCertificatesApi.md#getAllAccountCertificates) | **GET** v3/accounts/{account_id}/trusted-certificates | Get trusted certificates.
+[**updateAccountCertificate**](TenantSecurityAndIdentityCertificatesApi.md#updateAccountCertificate) | **PUT** v3/accounts/{account_id}/trusted-certificates/{cert_id} | Update trusted certificate.
+
+
+
+# **addAccountCertificate**
+> TrustedCertificateResp addAccountCertificate(accountId, body)
+
+Upload new trusted certificate.
+
+Upload new trusted certificate. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/trusted-certificates \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d {\"name\": \"myCert1\", \"description\": \"very important cert\", \"certificate\": \"certificate_data\", \"service\": \"lwm2m\"} ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantSecurityAndIdentityCertificatesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantSecurityAndIdentityCertificatesApi apiInstance = new TenantSecurityAndIdentityCertificatesApi();
+String accountId = "accountId_example"; // String | Account ID.
+TrustedCertificateReq body = new TrustedCertificateReq(); // TrustedCertificateReq | A trusted certificate object with attributes. Signature is optional.
+try {
+ TrustedCertificateResp result = apiInstance.addAccountCertificate(accountId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantSecurityAndIdentityCertificatesApi#addAccountCertificate");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| Account ID. |
+ **body** | [**TrustedCertificateReq**](TrustedCertificateReq.md)| A trusted certificate object with attributes. Signature is optional. |
+
+### Return type
+
+[**TrustedCertificateResp**](TrustedCertificateResp.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+
+# **deleteAccountCertificate**
+> Void deleteAccountCertificate(accountId, certId)
+
+Delete a trusted certificate by ID.
+
+Delete a trusted certificate. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/trusted-certificates/{cert_id} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantSecurityAndIdentityCertificatesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantSecurityAndIdentityCertificatesApi apiInstance = new TenantSecurityAndIdentityCertificatesApi();
+String accountId = "accountId_example"; // String | Account ID.
+String certId = "certId_example"; // String | The ID of the trusted certificate to delete.
+try {
+ Void result = apiInstance.deleteAccountCertificate(accountId, certId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantSecurityAndIdentityCertificatesApi#deleteAccountCertificate");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| Account ID. |
+ **certId** | **String**| The ID of the trusted certificate to delete. |
+
+### Return type
+
+[**Void**](.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getAccountCertificate**
+> TrustedCertificateResp getAccountCertificate(accountId, certId)
+
+Get a trusted certificate.
+
+Retrieve a trusted certificate. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/trusted-certificates/{cert_id} \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantSecurityAndIdentityCertificatesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantSecurityAndIdentityCertificatesApi apiInstance = new TenantSecurityAndIdentityCertificatesApi();
+String accountId = "accountId_example"; // String | Account ID.
+String certId = "certId_example"; // String | The ID of the trusted certificate to retrieve.
+try {
+ TrustedCertificateResp result = apiInstance.getAccountCertificate(accountId, certId);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantSecurityAndIdentityCertificatesApi#getAccountCertificate");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| Account ID. |
+ **certId** | **String**| The ID of the trusted certificate to retrieve. |
+
+### Return type
+
+[**TrustedCertificateResp**](TrustedCertificateResp.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getAllAccountCertificates**
+> TrustedCertificateRespList getAllAccountCertificates(accountId, limit, after, order, include, nameEq, serviceEq, expireEq, deviceExecutionModeEq, deviceExecutionModeNeq, ownerEq, enrollmentModeEq, statusEq, issuerLike, subjectLike, certificateFingerprintEq, validEq)
+
+Get trusted certificates.
+
+Retrieve an array of trusted certificates. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/trusted-certificates \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantSecurityAndIdentityCertificatesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantSecurityAndIdentityCertificatesApi apiInstance = new TenantSecurityAndIdentityCertificatesApi();
+String accountId = "accountId_example"; // String | Account ID.
+Integer limit = 50; // Integer | The number of results to return (2-1000). Default 50.
+String after = "after_example"; // String | The entity ID to retrieve after the given one.
+String order = "ASC"; // String | Record order based on creation. Acceptable values: ASC, DESC. Default: ASC.
+String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
+String nameEq = "nameEq_example"; // String | Filter for certificate name.
+String serviceEq = "serviceEq_example"; // String | Filter for service.
+Integer expireEq = 56; // Integer | Filter for expire.
+Integer deviceExecutionModeEq = 56; // Integer | Filter for developer certificates.
+Integer deviceExecutionModeNeq = 56; // Integer | Filter for not developer certificates.
+String ownerEq = "ownerEq_example"; // String | Owner name filter.
+Boolean enrollmentModeEq = true; // Boolean | Enrollment mode filter.
+String statusEq = "statusEq_example"; // String | Filter for certificate status.
+String issuerLike = "issuerLike_example"; // String | Filter for issuer. Finds all matches where the filter value is a case-insensitive substring of the result. Example: issuer__like=cn=iss matches CN=issuer.
+String subjectLike = "subjectLike_example"; // String | Filter for subject. Finds all matches where the filter value is a case-insensitive substring of the result. Example: subject__like=cn=su matches CN=subject.
+String certificateFingerprintEq = "certificateFingerprintEq_example"; // String | Filter for certificate fingerprint.
+Boolean validEq = true; // Boolean | Filter for finding certificates by validity. True returns certificates which are not yet expired. False returns certificates which have expired.
+try {
+ TrustedCertificateRespList result = apiInstance.getAllAccountCertificates(accountId, limit, after, order, include, nameEq, serviceEq, expireEq, deviceExecutionModeEq, deviceExecutionModeNeq, ownerEq, enrollmentModeEq, statusEq, issuerLike, subjectLike, certificateFingerprintEq, validEq);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantSecurityAndIdentityCertificatesApi#getAllAccountCertificates");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| Account ID. |
+ **limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional] [default to 50]
+ **after** | **String**| The entity ID to retrieve after the given one. | [optional]
+ **order** | **String**| Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. | [optional] [default to ASC]
+ **include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
+ **nameEq** | **String**| Filter for certificate name. | [optional]
+ **serviceEq** | **String**| Filter for service. | [optional]
+ **expireEq** | **Integer**| Filter for expire. | [optional]
+ **deviceExecutionModeEq** | **Integer**| Filter for developer certificates. | [optional]
+ **deviceExecutionModeNeq** | **Integer**| Filter for not developer certificates. | [optional]
+ **ownerEq** | **String**| Owner name filter. | [optional]
+ **enrollmentModeEq** | **Boolean**| Enrollment mode filter. | [optional]
+ **statusEq** | **String**| Filter for certificate status. | [optional]
+ **issuerLike** | **String**| Filter for issuer. Finds all matches where the filter value is a case-insensitive substring of the result. Example: issuer__like=cn=iss matches CN=issuer. | [optional]
+ **subjectLike** | **String**| Filter for subject. Finds all matches where the filter value is a case-insensitive substring of the result. Example: subject__like=cn=su matches CN=subject. | [optional]
+ **certificateFingerprintEq** | **String**| Filter for certificate fingerprint. | [optional]
+ **validEq** | **Boolean**| Filter for finding certificates by validity. True returns certificates which are not yet expired. False returns certificates which have expired. | [optional]
+
+### Return type
+
+[**TrustedCertificateRespList**](TrustedCertificateRespList.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **updateAccountCertificate**
+> TrustedCertificateResp updateAccountCertificate(accountId, certId, body)
+
+Update trusted certificate.
+
+Update a trusted certificate. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/trusted-certificates/{cert_id} \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d {\"description\": \"very important cert\"} ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.TenantSecurityAndIdentityCertificatesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+TenantSecurityAndIdentityCertificatesApi apiInstance = new TenantSecurityAndIdentityCertificatesApi();
+String accountId = "accountId_example"; // String | Account ID.
+String certId = "certId_example"; // String | The ID of the trusted certificate to update.
+TrustedCertificateUpdateReq body = new TrustedCertificateUpdateReq(); // TrustedCertificateUpdateReq | A trusted certificate object with attributes.
+try {
+ TrustedCertificateResp result = apiInstance.updateAccountCertificate(accountId, certId, body);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling TenantSecurityAndIdentityCertificatesApi#updateAccountCertificate");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **accountId** | **String**| Account ID. |
+ **certId** | **String**| The ID of the trusted certificate to update. |
+ **body** | [**TrustedCertificateUpdateReq**](TrustedCertificateUpdateReq.md)| A trusted certificate object with attributes. |
+
+### Return type
+
+[**TrustedCertificateResp**](TrustedCertificateResp.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/TenantUserInterfaceConfigurationColorsApi.md b/backends/pelioncloud_devicemanagement/docs/TenantUserInterfaceConfigurationColorsApi.md
index 1ea5b3759..038cae3dc 100644
--- a/backends/pelioncloud_devicemanagement/docs/TenantUserInterfaceConfigurationColorsApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/TenantUserInterfaceConfigurationColorsApi.md
@@ -25,7 +25,7 @@ Method | HTTP request | Description
Updates an array of dark theme branding colors.
-Update an array of dark theme branding colors of a tenant account. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id)/branding-colors/dark \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ '[{ \"reference\": \"primary\", \"color\": \"#f3f93e\" }]' ```
+Update an array of dark theme branding colors. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id)/branding-colors/dark \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ '[{ \"reference\": \"primary\", \"color\": \"#f3f93e\" }]' ```
### Example
```java
@@ -46,7 +46,7 @@ Bearer.setApiKey("YOUR API KEY");
TenantUserInterfaceConfigurationColorsApi apiInstance = new TenantUserInterfaceConfigurationColorsApi();
String accountId = "accountId_example"; // String | The ID of the account.
-List body = Arrays.asList(new BrandingColor()); // List | List of branding colors.
+List body = Arrays.asList(new BrandingColorUpdate()); // List | List of branding colors.
try {
Void result = apiInstance.bulkSetAccountDarkColors(accountId, body);
System.out.println(result);
@@ -61,7 +61,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **body** | [**List<BrandingColor>**](BrandingColor.md)| List of branding colors. |
+ **body** | [**List<BrandingColorUpdate>**](BrandingColorUpdate.md)| List of branding colors. |
### Return type
@@ -82,7 +82,7 @@ Name | Type | Description | Notes
Updates an array of light theme branding colors.
-Update an array of light theme branding colors of a tenant account. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id)/branding-colors/light \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ '[{ \"reference\": \"primary\", \"color\": \"purple\" }]' ```
+Update an array of light theme branding colors. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id)/branding-colors/light \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ '[{ \"reference\": \"primary\", \"color\": \"purple\" }]' ```
### Example
```java
@@ -103,7 +103,7 @@ Bearer.setApiKey("YOUR API KEY");
TenantUserInterfaceConfigurationColorsApi apiInstance = new TenantUserInterfaceConfigurationColorsApi();
String accountId = "accountId_example"; // String | The ID of the account.
-List body = Arrays.asList(new BrandingColor()); // List | List of branding colors.
+List body = Arrays.asList(new BrandingColorUpdate()); // List | List of branding colors.
try {
Void result = apiInstance.bulkSetAccountLightColors(accountId, body);
System.out.println(result);
@@ -118,7 +118,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **body** | [**List<BrandingColor>**](BrandingColor.md)| List of branding colors. |
+ **body** | [**List<BrandingColorUpdate>**](BrandingColorUpdate.md)| List of branding colors. |
### Return type
@@ -139,7 +139,7 @@ Name | Type | Description | Notes
Delete all colors.
-Delete account branding colors for all themes. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-colors -H 'Authorization: Bearer API_KEY'`
+Delete account branding colors for all themes. <b>Note:</b> This endpoint is restricted to administrators. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-colors -H 'Authorization: Bearer <access_key>'`
### Example
```java
@@ -194,7 +194,7 @@ Name | Type | Description | Notes
Delete colors in the dark theme.
-Delete account dark theme branding colors. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-colors/dark -H 'Authorization: Bearer API_KEY'`
+Delete account dark theme branding colors. <b>Note:</b> This endpoint is restricted to administrators. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-colors/dark -H 'Authorization: Bearer <access_key>'`
### Example
```java
@@ -249,7 +249,7 @@ Name | Type | Description | Notes
Delete colors in the light theme.
-Delete account light theme branding colors. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-colors/light -H 'Authorization: Bearer API_KEY'`
+Delete account light theme branding colors. <b>Note:</b> This endpoint is restricted to administrators. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-colors/light -H 'Authorization: Bearer <access_key>'`
### Example
```java
@@ -304,7 +304,7 @@ Name | Type | Description | Notes
Get dark theme branding color.
-Retrieve the requested dark theme branding color. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-colors/dark/{reference} \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve the requested dark theme branding color. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-colors/dark/{reference} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -340,7 +340,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color]
+ **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color, menu_background_color, menu_text_color, nav_menu_background, nav_menu_background_font_color, nav_menu_active_background, nav_menu_active_background_font_color, nav_menu_highlight, nav_menu_highlight_font_color]
### Return type
@@ -361,7 +361,7 @@ Name | Type | Description | Notes
Get dark theme branding colors.
-Retrieve dark theme branding colors for an account. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-colors/dark \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve dark theme branding colors for an account. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-colors/dark \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -416,7 +416,7 @@ Name | Type | Description | Notes
Get light theme branding color.
-Retrieve the requested light theme branding color. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-colors/light/{reference} -H 'Authorization: Bearer <api_key>' ```
+Retrieve the requested light theme branding color. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-colors/light/{reference} -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -452,7 +452,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color]
+ **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color, menu_background_color, menu_text_color, nav_menu_background, nav_menu_background_font_color, nav_menu_active_background, nav_menu_active_background_font_color, nav_menu_highlight, nav_menu_highlight_font_color]
### Return type
@@ -473,7 +473,7 @@ Name | Type | Description | Notes
Get light theme branding colors.
-Retrieve light theme branding colors for an account. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-colors/light \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve light theme branding colors for an account. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-colors/light \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -528,7 +528,7 @@ Name | Type | Description | Notes
Reset branding color to default.
-Resets the branding color of a tenant account to its dark theme default. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-colors/dark/{reference} \\ -H 'Authorization: Bearer <api_key>' ```
+Resets the branding color to its dark theme default. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-colors/dark/{reference} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -564,7 +564,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color]
+ **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color, menu_background_color, menu_text_color, nav_menu_background, nav_menu_background_font_color, nav_menu_active_background, nav_menu_active_background_font_color, nav_menu_highlight, nav_menu_highlight_font_color]
### Return type
@@ -585,7 +585,7 @@ Name | Type | Description | Notes
Reset branding color to default.
-Resets the branding color of a tenant account to its light theme default. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-colors/light/{reference} \\ -H 'Authorization: Bearer <api_key>' ```
+Resets the branding color to its light theme default. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-colors/light/{reference} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -621,7 +621,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color]
+ **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color, menu_background_color, menu_text_color, nav_menu_background, nav_menu_background_font_color, nav_menu_active_background, nav_menu_active_background_font_color, nav_menu_highlight, nav_menu_highlight_font_color]
### Return type
@@ -642,7 +642,7 @@ Name | Type | Description | Notes
Updates a dark theme branding color.
-Update a dark theme branding color of a tenant account. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id)/branding-colors/dark/primary \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{ \"color\": \"#f3f93e\" }' ```
+Update a dark theme branding color. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id)/branding-colors/dark/primary \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"color\": \"#f3f93e\" }' ```
### Example
```java
@@ -679,7 +679,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color]
+ **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color, menu_background_color, menu_text_color, nav_menu_background, nav_menu_background_font_color, nav_menu_active_background, nav_menu_active_background_font_color, nav_menu_highlight, nav_menu_highlight_font_color]
**body** | [**BrandingColor**](BrandingColor.md)| The branding color. |
### Return type
@@ -701,7 +701,7 @@ Name | Type | Description | Notes
Updates light theme branding color.
-Update a light theme branding color of a tenant account. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id)/branding-colors/light/primary \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{ \"color\": \"purple\" }' ```
+Update a light theme branding color. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id)/branding-colors/light/primary \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"color\": \"purple\" }' ```
### Example
```java
@@ -738,7 +738,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color]
+ **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color, menu_background_color, menu_text_color, nav_menu_background, nav_menu_background_font_color, nav_menu_active_background, nav_menu_active_background_font_color, nav_menu_highlight, nav_menu_highlight_font_color]
**body** | [**BrandingColor**](BrandingColor.md)| The branding color. |
### Return type
diff --git a/backends/pelioncloud_devicemanagement/docs/TenantUserInterfaceConfigurationImagesApi.md b/backends/pelioncloud_devicemanagement/docs/TenantUserInterfaceConfigurationImagesApi.md
index da68095d3..41b5438e7 100644
--- a/backends/pelioncloud_devicemanagement/docs/TenantUserInterfaceConfigurationImagesApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/TenantUserInterfaceConfigurationImagesApi.md
@@ -25,7 +25,7 @@ Method | HTTP request | Description
Revert an image to dark theme default.
-Revert an account branding image to dark theme default. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/dark/{reference}/clear \\ -H 'Authorization: Bearer <api_key>' ```
+Revert an account branding image to dark theme default. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/dark/{reference}/clear \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -61,7 +61,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
+ **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, app_logo_landscape, app_logo_portrait, app_logo_square, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
### Return type
@@ -82,7 +82,7 @@ Name | Type | Description | Notes
Revert an image to light theme default.
-Revert an account branding image to light theme default. **Example:** ```curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/light/{reference}/clear \\ -H 'Authorization: Bearer <api_key>' ```
+Revert an account branding image to light theme default. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ```curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/light/{reference}/clear \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -118,7 +118,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
+ **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, app_logo_landscape, app_logo_portrait, app_logo_square, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
### Return type
@@ -139,7 +139,7 @@ Name | Type | Description | Notes
Delete images in the dark theme.
-Delete account dark theme branding images. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/dark -H 'Authorization: Bearer API_KEY'`
+Delete account dark theme branding images. <b>Note:</b> This endpoint is restricted to administrators. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/dark -H 'Authorization: Bearer <access_key>'`
### Example
```java
@@ -194,7 +194,7 @@ Name | Type | Description | Notes
Delete all images.
-Delete account branding images for all themes. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images -H 'Authorization: Bearer API_KEY'`
+Delete account branding images for all themes. <b>Note:</b> This endpoint is restricted to administrators. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images -H 'Authorization: Bearer <access_key>'`
### Example
```java
@@ -249,7 +249,7 @@ Name | Type | Description | Notes
Delete images in the light theme.
-Delete account light theme branding images. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/light -H 'Authorization: Bearer API_KEY'`
+Delete account light theme branding images. <b>Note:</b> This endpoint is restricted to administrators. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/light -H 'Authorization: Bearer <access_key>'`
### Example
```java
@@ -304,7 +304,7 @@ Name | Type | Description | Notes
Get metadata of a dark theme image.
-Retrieve metadata of one account dark theme branding image. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/dark/{reference} \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve metadata of one account dark theme branding image. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/dark/{reference} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -340,7 +340,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
+ **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, app_logo_landscape, app_logo_portrait, app_logo_square, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
### Return type
@@ -361,7 +361,7 @@ Name | Type | Description | Notes
Get metadata of a light theme image.
-Retrieve metadata for one account light theme branding image. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/light/{reference} \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve metadata for one account light theme branding image. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/light/{reference} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -397,7 +397,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
+ **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, app_logo_landscape, app_logo_portrait, app_logo_square, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
### Return type
@@ -418,7 +418,7 @@ Name | Type | Description | Notes
Get metadata of all dark theme images.
-Retrieve the metadata of all dark theme branding images. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/dark \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve the metadata of all dark theme branding images. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/dark \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -473,7 +473,7 @@ Name | Type | Description | Notes
Get metadata of all light theme images.
-Retrieve the metadata of all light theme branding images. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/light \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve the metadata of all light theme branding images. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/light \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -528,7 +528,7 @@ Name | Type | Description | Notes
Upload a dark theme image.
-Upload a new account dark theme branding image in PNG or JPEG format. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/dark/{reference}/upload \\ -H 'Authorization: Bearer <api_key>' -H 'content-type: image/png' --data-binary '@myimage.png' ```
+Upload a new account dark theme branding image in PNG or JPEG format. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/dark/{reference}/upload \\ -H 'Authorization: Bearer <access_key>' -H 'content-type: image/png' --data-binary '@myimage.png' ```
### Example
```java
@@ -565,7 +565,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
+ **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, app_logo_landscape, app_logo_portrait, app_logo_square, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
**body** | [**String**](String.md)| The image in PNG or JPEG format. |
### Return type
@@ -587,7 +587,7 @@ Name | Type | Description | Notes
Upload a dark theme image.
-Upload a new account dark theme branding image as form data in PNG or JPEG format.
+Upload a new account dark theme branding image as form data in PNG or JPEG format. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -624,7 +624,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
+ **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, app_logo_landscape, app_logo_portrait, app_logo_square, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
**image** | **File**| The image in PNG or JPEG format as multipart form data. |
### Return type
@@ -646,7 +646,7 @@ Name | Type | Description | Notes
Upload a light theme image.
-Upload a new account light theme branding image in PNG or JPEG format. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/light/{reference}/upload \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: image/png' --data-binary '@myimage.png' ```
+Upload a new account light theme branding image in PNG or JPEG format. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/branding-images/light/{reference}/upload \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: image/png' --data-binary '@myimage.png' ```
### Example
```java
@@ -683,7 +683,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
+ **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, app_logo_landscape, app_logo_portrait, app_logo_square, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
**body** | [**String**](String.md)| The image in PNG or JPEG format. |
### Return type
@@ -705,7 +705,7 @@ Name | Type | Description | Notes
Upload a light theme image.
-Upload a new account branding image as form data in PNG or JPEG format.
+Upload a new account branding image as form data in PNG or JPEG format. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -742,7 +742,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**accountId** | **String**| The ID of the account. |
- **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
+ **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, app_logo_landscape, app_logo_portrait, app_logo_square, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
**image** | **File**| The image in PNG or JPEG format as multipart form data. |
### Return type
diff --git a/backends/pelioncloud_devicemanagement/docs/TierHistory.md b/backends/pelioncloud_devicemanagement/docs/TierHistory.md
new file mode 100644
index 000000000..3461e26b1
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/TierHistory.md
@@ -0,0 +1,11 @@
+
+# TierHistory
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**tier** | **String** | The tier level of the account; `0`: free tier, `1`: commercial account, `2`: partner tier. Other values are reserved for the future. | [optional]
+**updatedAt** | [**DateTime**](DateTime.md) | Last update UTC time RFC3339. | [optional]
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/TokenRequest.md b/backends/pelioncloud_devicemanagement/docs/TokenRequest.md
new file mode 100644
index 000000000..e02451e34
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/TokenRequest.md
@@ -0,0 +1,13 @@
+
+# TokenRequest
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**aud** | **List<String>** | Array of \\<type\\>:\\<identity\\> tuples representing devices for which access is being requested. There must be at least one id/ep tuple.<br/> \\<type\\> ::= id|ep <br/> \\<identity\\>::=[a-zA-Z0-9+/=- ]+ <br/>\\<audience\\> :== \\<type\\> \":\" \\<identity\\> <br/> \\<identity\\> can be up to 60 characters long, and can contain spaces. <br/> The audience array can contain up to 50 tuples. If IAM does not authorize even one item in the list, Secure Device Access does not authorize the whole request and does not return an access token (access denied). |
+**cnf** | **String** | The Android application proof-of-possession public key. |
+**grantType** | **String** | Hardcoded - can only be \"client_credentials\". |
+**scope** | **String** | The space-delimited list of operations that user is requesting permission for. The array must contain at least one scope item. A scope item can have up to 60 characters. A scope list can hold up to 20 scope items. <br/> \\<scope\\>::=[a-zA-Z][a-zA-Z0-9-]* <br/> \\<scope-list\\>::= \\<scope\\> | \\<scope\\> \" \" | \\<scope\\> \" \" \\<scope-list\\> <br/> The scope being requested must match the action that the Android application eventually performs on the IoT device. The device matches the scope in the access token to the action requested in the operation bundle. |
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/TokenResponse.md b/backends/pelioncloud_devicemanagement/docs/TokenResponse.md
new file mode 100644
index 000000000..61d42792c
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/TokenResponse.md
@@ -0,0 +1,11 @@
+
+# TokenResponse
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**accessToken** | **byte[]** | The generated CWT (CBOR Web Token) access token as a Base64 string. | [optional]
+**grantedUntil** | [**DateTime**](DateTime.md) | Grant expiration UTC time RFC3339. | [optional]
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/TrustAnchorResponse.md b/backends/pelioncloud_devicemanagement/docs/TrustAnchorResponse.md
new file mode 100644
index 000000000..cd54ae358
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/TrustAnchorResponse.md
@@ -0,0 +1,18 @@
+
+# TrustAnchorResponse
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**createdAt** | [**DateTime**](DateTime.md) | Creation UTC time. | [optional]
+**description** | **String** | The updated notes about the trust anchor. | [optional]
+**etag** | **String** | Entity instance signature, 1 or Unix timestamp of last customer update. | [optional]
+**fingerprint** | **byte[]** | The SHA256 of the trust anchor public key; the prefix 'mbed.ta.' followed by the trust anchor public key as a SHA256 hash in Base64-encoded DER format. | [optional]
+**id** | **String** | The ID of the entity. | [optional]
+**object** | **String** | The API resource entity | [optional]
+**publicKey** | **byte[]** | The trust anchor public key in PEM format. | [optional]
+**publicKeyDer** | **byte[]** | The generated trust anchor public key in Base64-encoded DER format. | [optional]
+**updatedAt** | [**DateTime**](DateTime.md) | Update UTC time. | [optional]
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/TrustedCertificateReq.md b/backends/pelioncloud_devicemanagement/docs/TrustedCertificateReq.md
index a8a048dcd..1d8cd0baf 100644
--- a/backends/pelioncloud_devicemanagement/docs/TrustedCertificateReq.md
+++ b/backends/pelioncloud_devicemanagement/docs/TrustedCertificateReq.md
@@ -6,7 +6,7 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**certificate** | **String** | A chain of X509.v3 trusted certificates in PEM format. The chain must contain all certificates from root to leaf. Otherwise, the signature parameter is required. |
**description** | **String** | Human readable description of this certificate. | [optional]
-**enrollmentMode** | **Boolean** | Certificate is used in enrollment mode. Default value is false. | [optional]
+**enrollmentMode** | **Boolean** | DEPRECATED: Certificate is used in enrollment mode. Default value is false. | [optional]
**name** | **String** | Certificate name. |
**service** | [**ServiceEnum**](#ServiceEnum) | Service name where the certificate must be used. |
**signature** | **String** | DEPRECATED: Base64 encoded signature of the account ID signed by the certificate to upload. The signature must be hashed with SHA256. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/TrustedCertificateResp.md b/backends/pelioncloud_devicemanagement/docs/TrustedCertificateResp.md
index f12b776ef..4c99b1822 100644
--- a/backends/pelioncloud_devicemanagement/docs/TrustedCertificateResp.md
+++ b/backends/pelioncloud_devicemanagement/docs/TrustedCertificateResp.md
@@ -10,7 +10,7 @@ Name | Type | Description | Notes
**createdAt** | [**DateTime**](DateTime.md) | Creation UTC time RFC3339. | [optional]
**description** | **String** | Human readable description of this certificate. | [optional]
**deviceExecutionMode** | **Integer** | Device execution mode where 1 means a developer certificate. | [optional]
-**enrollmentMode** | **Boolean** | If true, signature is not required. Default value false. | [optional]
+**enrollmentMode** | **Boolean** | DEPRECATED: Certificate is used in enrollment mode. Default value is false. | [optional]
**etag** | **String** | API resource entity version. |
**id** | **String** | Entity ID. |
**issuer** | **String** | Issuer of the certificate. |
diff --git a/backends/pelioncloud_devicemanagement/docs/TrustedCertificateRespList.md b/backends/pelioncloud_devicemanagement/docs/TrustedCertificateRespList.md
index 40401ff27..9a76bbb10 100644
--- a/backends/pelioncloud_devicemanagement/docs/TrustedCertificateRespList.md
+++ b/backends/pelioncloud_devicemanagement/docs/TrustedCertificateRespList.md
@@ -4,7 +4,7 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**after** | **String** | The entity ID to fetch after the given one. | [optional]
+**after** | **String** | The entity ID to retrieve after the given one. | [optional]
**data** | [**List<TrustedCertificateResp>**](TrustedCertificateResp.md) | A list of entities. |
**hasMore** | **Boolean** | Flag indicating whether there are more results. |
**limit** | **Integer** | The number of results to return (2-1000), or equal to `total_count`. |
diff --git a/backends/pelioncloud_devicemanagement/docs/TrustedCertificateUpdateReq.md b/backends/pelioncloud_devicemanagement/docs/TrustedCertificateUpdateReq.md
index 568c8892f..d1efa969f 100644
--- a/backends/pelioncloud_devicemanagement/docs/TrustedCertificateUpdateReq.md
+++ b/backends/pelioncloud_devicemanagement/docs/TrustedCertificateUpdateReq.md
@@ -8,7 +8,7 @@ Name | Type | Description | Notes
**description** | **String** | Human readable description of this certificate. | [optional]
**enrollmentMode** | **Boolean** | Certificate is used in enrollment mode. Default value is false. | [optional]
**name** | **String** | Certificate name. | [optional]
-**service** | [**ServiceEnum**](#ServiceEnum) | Service name where the certificate must be used. | [optional]
+**service** | [**ServiceEnum**](#ServiceEnum) | Service name where the certificate must be used. Service cannot be updated for developer certificates. | [optional]
**signature** | **String** | DEPRECATED: Base64 encoded signature of the account ID signed by the certificate to be uploaded. The signature must be hashed with SHA256. | [optional]
**status** | [**StatusEnum**](#StatusEnum) | Status of the certificate. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/UpdateCampaign.md b/backends/pelioncloud_devicemanagement/docs/UpdateCampaign.md
index eefd9fadb..cb26d11c8 100644
--- a/backends/pelioncloud_devicemanagement/docs/UpdateCampaign.md
+++ b/backends/pelioncloud_devicemanagement/docs/UpdateCampaign.md
@@ -13,7 +13,7 @@ Name | Type | Description | Notes
**campaignStrategy** | [**CampaignStrategyEnum**](#CampaignStrategyEnum) | How the campaign adds devices. A `one-shot` campaign does not add new devices after it has started. A `continuous` campaign means that devices may be added to the campaign after it has started. The default is `one-shot`. | [optional]
**createdAt** | [**DateTime**](DateTime.md) | The time the entity was created. | [optional]
**description** | **String** | An optional description of the campaign. | [optional]
-**deviceFilter** | **String** | The filter for the devices the campaign is targeting at. | [optional]
+**deviceFilter** | **String** | The filter for the devices the campaign targets. Refer to this using the filter ID. | [optional]
**etag** | **String** | API resource entity version. | [optional]
**finished** | [**DateTime**](DateTime.md) | The time the campaign finished. | [optional]
**id** | **String** | The campaign ID. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/UpdateCampaignPostRequest.md b/backends/pelioncloud_devicemanagement/docs/UpdateCampaignPostRequest.md
index 80b185c95..8b27f2839 100644
--- a/backends/pelioncloud_devicemanagement/docs/UpdateCampaignPostRequest.md
+++ b/backends/pelioncloud_devicemanagement/docs/UpdateCampaignPostRequest.md
@@ -9,9 +9,11 @@ Name | Type | Description | Notes
**autostopSuccessPercent** | [**BigDecimal**](BigDecimal.md) | | [optional]
**campaignStrategy** | [**CampaignStrategyEnum**](#CampaignStrategyEnum) | How the campaign adds devices. A `one-shot` campaign does not add new devices after it has started. A `continuous` campaign means that devices may be added to the campaign after it has started. The default is `one-shot`. | [optional]
**description** | **String** | An optional description of the campaign. | [optional]
-**deviceFilter** | **String** | The filter for the devices the campaign is targeted at. |
+**deviceFilter** | **String** | The filter for the devices the campaign targets. Refer to this using the filter ID. |
**name** | **String** | The name for this campaign. | [optional]
**rootManifestId** | **String** | | [optional]
+**state** | [**StateEnum**](#StateEnum) | DEPRECATED: The state of the campaign (use phase instead) | [optional]
+**when** | [**DateTime**](DateTime.md) | The scheduled start time for the update campaign. Not in use. | [optional]
@@ -22,4 +24,12 @@ ONE_SHOT | "one-shot"
CONTINUOUS | "continuous"
+
+## Enum: StateEnum
+Name | Value
+---- | -----
+DRAFT | "draft"
+SCHEDULED | "scheduled"
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/UpdateCampaignPutRequest.md b/backends/pelioncloud_devicemanagement/docs/UpdateCampaignPutRequest.md
index 8204ddec6..b0c1f20dc 100644
--- a/backends/pelioncloud_devicemanagement/docs/UpdateCampaignPutRequest.md
+++ b/backends/pelioncloud_devicemanagement/docs/UpdateCampaignPutRequest.md
@@ -8,9 +8,36 @@ Name | Type | Description | Notes
**autostop** | **Boolean** | | [optional]
**autostopSuccessPercent** | [**BigDecimal**](BigDecimal.md) | | [optional]
**description** | **String** | An optional description of the campaign. | [optional]
-**deviceFilter** | **String** | The filter for the devices the campaign is targeting at. | [optional]
+**deviceFilter** | **String** | The filter for the devices the campaign targets. Refer to this using the filter ID. | [optional]
**name** | **String** | The campaign's name. | [optional]
**rootManifestId** | **String** | | [optional]
+**state** | [**StateEnum**](#StateEnum) | DEPRECATED: The state of the campaign (use phase instead). | [optional]
+**when** | [**DateTime**](DateTime.md) | The scheduled start time for the update campaign. Not in use. | [optional]
+
+
+
+## Enum: StateEnum
+Name | Value
+---- | -----
+DRAFT | "draft"
+SCHEDULED | "scheduled"
+ALLOCATINGQUOTA | "allocatingquota"
+ALLOCATEDQUOTA | "allocatedquota"
+QUOTAALLOCATIONFAILED | "quotaallocationfailed"
+CHECKINGMANIFEST | "checkingmanifest"
+CHECKEDMANIFEST | "checkedmanifest"
+DEVICEFETCH | "devicefetch"
+DEVICECOPY | "devicecopy"
+DEVICECHECK | "devicecheck"
+PUBLISHING | "publishing"
+DEPLOYING | "deploying"
+DEPLOYED | "deployed"
+MANIFESTREMOVED | "manifestremoved"
+EXPIRED | "expired"
+STOPPING | "stopping"
+AUTOSTOPPED | "autostopped"
+USERSTOPPED | "userstopped"
+CONFLICT | "conflict"
diff --git a/backends/pelioncloud_devicemanagement/docs/UpdateTrustAnchorRequest.md b/backends/pelioncloud_devicemanagement/docs/UpdateTrustAnchorRequest.md
new file mode 100644
index 000000000..9f9bd3254
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/UpdateTrustAnchorRequest.md
@@ -0,0 +1,10 @@
+
+# UpdateTrustAnchorRequest
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**description** | **String** | The new description for the trust anchor. |
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/UpdateTrustAnchorResponse.md b/backends/pelioncloud_devicemanagement/docs/UpdateTrustAnchorResponse.md
new file mode 100644
index 000000000..5b962fa87
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/UpdateTrustAnchorResponse.md
@@ -0,0 +1,18 @@
+
+# UpdateTrustAnchorResponse
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**createdAt** | [**DateTime**](DateTime.md) | Creation UTC time. | [optional]
+**description** | **String** | The updated notes about the trust anchor. | [optional]
+**etag** | **String** | Entity instance signature, 1 or Unix timestamp of last customer update. | [optional]
+**fingerprint** | **byte[]** | The SHA256 of the trust anchor public key; the prefix 'mbed.ta.' followed by the trust anchor public key as a SHA256 hash in Base64-encoded DER format. | [optional]
+**id** | **String** | The ID of the entity. | [optional]
+**object** | **String** | The API resource entity | [optional]
+**publicKey** | **byte[]** | The trust anchor public key in PEM format. | [optional]
+**publicKeyDer** | **byte[]** | The generated trust anchor public key in Base64-encoded DER format. | [optional]
+**updatedAt** | [**DateTime**](DateTime.md) | Update UTC time. | [optional]
+
+
+
diff --git a/backends/pelioncloud_devicemanagement/docs/UsageBillingReportsApi.md b/backends/pelioncloud_devicemanagement/docs/UsageBillingReportsApi.md
new file mode 100644
index 000000000..832ffffaa
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/UsageBillingReportsApi.md
@@ -0,0 +1,280 @@
+# UsageBillingReportsApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**getBillingReport**](UsageBillingReportsApi.md#getBillingReport) | **GET** v3/billing-report | Get billing report.
+[**getBillingReportActiveDevices**](UsageBillingReportsApi.md#getBillingReportActiveDevices) | **GET** v3/billing-report-active-devices | Get raw billing data of the active devices for the month.
+[**getBillingReportFirmwareUpdates**](UsageBillingReportsApi.md#getBillingReportFirmwareUpdates) | **GET** v3/billing-report-firmware-updates | Get raw billing data of the firmware updates for the month.
+[**getServicePackageQuota**](UsageBillingReportsApi.md#getServicePackageQuota) | **GET** v3/service-packages-quota | Service package quota.
+[**getServicePackages**](UsageBillingReportsApi.md#getServicePackages) | **GET** v3/service-packages | Get all service packages.
+
+
+
+# **getBillingReport**
+> ReportResponse getBillingReport(month)
+
+Get billing report.
+
+Fetch the billing report generated for the currently authenticated commercial account. The billing reports for tenant accounts are also included in their aggregator's billing report response. The response contains below additional counters when the account's business model is set to `API calls` by the account administrator. - rest_api_requests_with_user_token - rest_api_requests_with_api_key_token - pelion_to_webapp_notifications - device_to_pelion_messages - pelion_to_device_messages **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/billing-report?month=2018-07 \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.UsageBillingReportsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+UsageBillingReportsApi apiInstance = new UsageBillingReportsApi();
+String month = "month_example"; // String | Queried year and month of billing report.
+try {
+ ReportResponse result = apiInstance.getBillingReport(month);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling UsageBillingReportsApi#getBillingReport");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **month** | **String**| Queried year and month of billing report. |
+
+### Return type
+
+[**ReportResponse**](ReportResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getBillingReportActiveDevices**
+> BillingReportRawDataResponse getBillingReportActiveDevices(month)
+
+Get raw billing data of the active devices for the month.
+
+Fetch raw billing data for active devices for the currently authenticated commercial account. This is supplementary data for the billing report. The raw billing data of the active devices for tenant accounts are included in their aggregator's raw billing data of the active devices. The endpoint returns the URL to download the gzipped CSV file. The first line is the header providing information on active devices, for example, the ID of an active device. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/billing-report-active-devices?month=2018-07 \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.UsageBillingReportsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+UsageBillingReportsApi apiInstance = new UsageBillingReportsApi();
+String month = "month_example"; // String | Queried year and month of billing report.
+try {
+ BillingReportRawDataResponse result = apiInstance.getBillingReportActiveDevices(month);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling UsageBillingReportsApi#getBillingReportActiveDevices");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **month** | **String**| Queried year and month of billing report. |
+
+### Return type
+
+[**BillingReportRawDataResponse**](BillingReportRawDataResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getBillingReportFirmwareUpdates**
+> BillingReportRawDataResponse getBillingReportFirmwareUpdates(month)
+
+Get raw billing data of the firmware updates for the month.
+
+Fetch raw billing data for firmware updates for the currently authenticated commercial account. This is supplementary data for the billing report. The raw billing data of the firmware updates for tenant accounts are also included in their aggregator's raw billing data of the firmware updates. The endpoint returns the URL to download the gzipped CSV file. The first line is the header providing information on the firmware updates, for example, the ID of a firmware update. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/billing-report-firmware-updates?month=2018-07 \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.UsageBillingReportsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+UsageBillingReportsApi apiInstance = new UsageBillingReportsApi();
+String month = "month_example"; // String | Queried year and month of billing report.
+try {
+ BillingReportRawDataResponse result = apiInstance.getBillingReportFirmwareUpdates(month);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling UsageBillingReportsApi#getBillingReportFirmwareUpdates");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **month** | **String**| Queried year and month of billing report. |
+
+### Return type
+
+[**BillingReportRawDataResponse**](BillingReportRawDataResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getServicePackageQuota**
+> ServicePackageQuota getServicePackageQuota()
+
+Service package quota.
+
+Get the available firmware update quota for the current authenticated commercial account. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/service-packages-quota \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.UsageBillingReportsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+UsageBillingReportsApi apiInstance = new UsageBillingReportsApi();
+try {
+ ServicePackageQuota result = apiInstance.getServicePackageQuota();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling UsageBillingReportsApi#getServicePackageQuota");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**ServicePackageQuota**](ServicePackageQuota.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+
+# **getServicePackages**
+> ServicePackagesResponse getServicePackages()
+
+Get all service packages.
+
+Get information for all service packages for the current authenticated commercial account. The response is returned in descending order by service package created timestamp: first the pending service package, then the active service package, then the previous service packages. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/service-packages \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.UsageBillingReportsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+UsageBillingReportsApi apiInstance = new UsageBillingReportsApi();
+try {
+ ServicePackagesResponse result = apiInstance.getServicePackages();
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling UsageBillingReportsApi#getServicePackages");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+[**ServicePackagesResponse**](ServicePackagesResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/UsageServiceMetricsApi.md b/backends/pelioncloud_devicemanagement/docs/UsageServiceMetricsApi.md
new file mode 100644
index 000000000..7e686db57
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/UsageServiceMetricsApi.md
@@ -0,0 +1,78 @@
+# UsageServiceMetricsApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**getMetrics**](UsageServiceMetricsApi.md#getMetrics) | **GET** v3/metrics | Provides account-specific statistics for other cloud services.
+
+
+
+# **getMetrics**
+> SuccessfulResponse getMetrics(include, interval, start, end, period, limit, after, order)
+
+Provides account-specific statistics for other cloud services.
+
+Get account-specific statistics.
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.UsageServiceMetricsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+UsageServiceMetricsApi apiInstance = new UsageServiceMetricsApi();
+String include = "include_example"; // String | A comma-separated list of requested metrics and total_count (if included, the response will contain total_count to specify the total number of records available). Supported values are: - `transactions` - `full_registrations` - `registration_updates` - `deleted_registrations` - `expired_registrations` - `bootstraps_successful` - `bootstraps_failed` - `bootstraps_pending` - `handshakes_successful` - `connect_rest_api_success` - `connect_rest_api_error` - `device_proxy_request_success` - `device_proxy_request_error` - `device_subscription_request_success` - `device_subscription_request_error` - `device_observations` - `total_count` **Note:** The metrics `device_proxy_request_success`, `device_proxy_request_error`, `device_subscription_request_success`, `device_subscription_request_error` and `device_observations` monitor only the response from the device to Device Management Connect. They do not confirm that the response is delivered to the client callback URLs used when you try to access device resources using [Connect API](https://developer.pelion.com/docs/device-management-api/connect/) endpoints. New metrics will be added to monitor the response delivery to client callback URLs later. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/metrics?include=transactions,total_count&start=20170207&end=20170407&interval=1d \\ -H \"Authorization : Bearer \" ``` **Response:** { \"object\": \"list\", \"limit\": 20, \"total_count\": 54, \"after\": \"2017-07-26T00:00:00Z\", \"has_more\": true, \"data\": [ { \"id\": \"015d8157c800015e306fffff005374617473000\", \"timestamp\": \"2017-07-27T00:00:00Z\", \"transactions\": 27366 }, { \"id\": \"015d867e2400015e306fffff005374617473000\", \"timestamp\": \"2017-07-28T00:00:00Z\", \"transactions\": 27480 } ] } ```
+String interval = "interval_example"; // String | Group the data by this interval in minutes, hours, days or weeks. Sample values: 5m, 2h, 3d, 4w. The interval cannot exceed one year (365 days). The allowed ranges are 5m-525600m/1h-8760h/1d-365d/1w-53w.
+LocalDate start = new LocalDate(); // LocalDate | UTC time/year/date in RFC3339 format. Fetch the data with timestamp greater than or equal to this value. Sample values: 20170207T092056990Z/2017-02-07T09:20:56.990Z/2017/20170207. The time between start and end parameters cannot exceed one year (365 days). The parameter is not mandatory if the period is specified.
+LocalDate end = new LocalDate(); // LocalDate | UTC time/year/date in RFC3339 format. Fetch the data with timestamp less than this value. Sample values: 20170207T092056990Z/2017-02-07T09:20:56.990Z/2017/20170207. The time between start and end parameters cannot exceed one year (365 days). The parameter is not mandatory if the period is specified.
+String period = "period_example"; // String | Period. Fetch the data for the period in minutes, hours, days or weeks. Sample values: 5m, 2h, 3d, 4w. The parameter is not mandatory if the start and end time are specified. The period cannot exceed one year (365 days). The allowed ranges are 5m-525600m/1h-8760h/1d-365d/1w-53w.
+Integer limit = 56; // Integer | The number of results to return (2-1000). Default 50.
+String after = "after_example"; // String | The metric ID after which to start fetching. This also can be used for pagination. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/metrics?include=transactions,total_count&start=20170707&end=20170829&interval=1d&limit=20 \\ -H \"Authorization : Bearer \" ``` **Response:** ``` { \"object\": \"list\", \"limit\": 20, \"total_count\": 54, \"has_more\": true, \"data\": [ { \"id\": \"015d1a589800015e306fffff005374617473000\", \"timestamp\": \"2017-07-07T00:00:00Z\", \"transactions\": 26381 }, . . . { \"id\": \"015d7c316c00015e306fffff005374617473000\", \"timestamp\": \"2017-07-26T00:00:00Z\", \"transactions\": 25569 } ] } ``` If the parameter `has more` is true, it indicates that the list is not complete and more values are available. You can give the last ID of the list as the value of the `after` query parameter, and you get the next page of values. You can keep doing this until `has more` is false. ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/metrics?include=transactions,total_count&start=20170707&end=20170829&interval=1d&limit=20&after=015d7c316c00015e306fffff005374617473000 \\ -H \"Authorization : Bearer \" ``` **Response:** ``` { \"object\": \"list\", \"limit\": 20, \"total_count\": 54, \"after\": \"2017-07-26T00:00:00Z\", \"has_more\": true, \"data\": [ { \"id\": \"015d8157c800015e306fffff005374617473000\", \"timestamp\": \"2017-07-27T00:00:00Z\", \"transactions\": 27366 }, . . . { \"id\": \"015de3309c00015e306fffff005374617473000\", \"timestamp\": \"2017-08-15T00:00:00Z\", \"transactions\": 24707 } ] } ```
+String order = "order_example"; // String | 'Record order. Acceptable values: ASC, DESC. Default: ASC.'
+try {
+ SuccessfulResponse result = apiInstance.getMetrics(include, interval, start, end, period, limit, after, order);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling UsageServiceMetricsApi#getMetrics");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **include** | **String**| A comma-separated list of requested metrics and total_count (if included, the response will contain total_count to specify the total number of records available). Supported values are: - `transactions` - `full_registrations` - `registration_updates` - `deleted_registrations` - `expired_registrations` - `bootstraps_successful` - `bootstraps_failed` - `bootstraps_pending` - `handshakes_successful` - `connect_rest_api_success` - `connect_rest_api_error` - `device_proxy_request_success` - `device_proxy_request_error` - `device_subscription_request_success` - `device_subscription_request_error` - `device_observations` - `total_count` **Note:** The metrics `device_proxy_request_success`, `device_proxy_request_error`, `device_subscription_request_success`, `device_subscription_request_error` and `device_observations` monitor only the response from the device to Device Management Connect. They do not confirm that the response is delivered to the client callback URLs used when you try to access device resources using [Connect API](https://developer.pelion.com/docs/device-management-api/connect/) endpoints. New metrics will be added to monitor the response delivery to client callback URLs later. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/metrics?include=transactions,total_count&start=20170207&end=20170407&interval=1d \\ -H \"Authorization : Bearer <access_key>\" ``` **Response:** { \"object\": \"list\", \"limit\": 20, \"total_count\": 54, \"after\": \"2017-07-26T00:00:00Z\", \"has_more\": true, \"data\": [ { \"id\": \"015d8157c800015e306fffff005374617473000\", \"timestamp\": \"2017-07-27T00:00:00Z\", \"transactions\": 27366 }, { \"id\": \"015d867e2400015e306fffff005374617473000\", \"timestamp\": \"2017-07-28T00:00:00Z\", \"transactions\": 27480 } ] } ``` |
+ **interval** | **String**| Group the data by this interval in minutes, hours, days or weeks. Sample values: 5m, 2h, 3d, 4w. The interval cannot exceed one year (365 days). The allowed ranges are 5m-525600m/1h-8760h/1d-365d/1w-53w. |
+ **start** | **LocalDate**| UTC time/year/date in RFC3339 format. Fetch the data with timestamp greater than or equal to this value. Sample values: 20170207T092056990Z/2017-02-07T09:20:56.990Z/2017/20170207. The time between start and end parameters cannot exceed one year (365 days). The parameter is not mandatory if the period is specified. | [optional]
+ **end** | **LocalDate**| UTC time/year/date in RFC3339 format. Fetch the data with timestamp less than this value. Sample values: 20170207T092056990Z/2017-02-07T09:20:56.990Z/2017/20170207. The time between start and end parameters cannot exceed one year (365 days). The parameter is not mandatory if the period is specified. | [optional]
+ **period** | **String**| Period. Fetch the data for the period in minutes, hours, days or weeks. Sample values: 5m, 2h, 3d, 4w. The parameter is not mandatory if the start and end time are specified. The period cannot exceed one year (365 days). The allowed ranges are 5m-525600m/1h-8760h/1d-365d/1w-53w. | [optional]
+ **limit** | **Integer**| The number of results to return (2-1000). Default 50. | [optional]
+ **after** | **String**| The metric ID after which to start fetching. This also can be used for pagination. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/metrics?include=transactions,total_count&start=20170707&end=20170829&interval=1d&limit=20 \\ -H \"Authorization : Bearer <access_key>\" ``` **Response:** ``` { \"object\": \"list\", \"limit\": 20, \"total_count\": 54, \"has_more\": true, \"data\": [ { \"id\": \"015d1a589800015e306fffff005374617473000\", \"timestamp\": \"2017-07-07T00:00:00Z\", \"transactions\": 26381 }, . . . { \"id\": \"015d7c316c00015e306fffff005374617473000\", \"timestamp\": \"2017-07-26T00:00:00Z\", \"transactions\": 25569 } ] } ``` If the parameter `has more` is true, it indicates that the list is not complete and more values are available. You can give the last ID of the list as the value of the `after` query parameter, and you get the next page of values. You can keep doing this until `has more` is false. ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/metrics?include=transactions,total_count&start=20170707&end=20170829&interval=1d&limit=20&after=015d7c316c00015e306fffff005374617473000 \\ -H \"Authorization : Bearer <access_key>\" ``` **Response:** ``` { \"object\": \"list\", \"limit\": 20, \"total_count\": 54, \"after\": \"2017-07-26T00:00:00Z\", \"has_more\": true, \"data\": [ { \"id\": \"015d8157c800015e306fffff005374617473000\", \"timestamp\": \"2017-07-27T00:00:00Z\", \"transactions\": 27366 }, . . . { \"id\": \"015de3309c00015e306fffff005374617473000\", \"timestamp\": \"2017-08-15T00:00:00Z\", \"transactions\": 24707 } ] } ``` | [optional]
+ **order** | **String**| 'Record order. Acceptable values: ASC, DESC. Default: ASC.' | [optional]
+
+### Return type
+
+[**SuccessfulResponse**](SuccessfulResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/UsageServicePackagesApi.md b/backends/pelioncloud_devicemanagement/docs/UsageServicePackagesApi.md
new file mode 100644
index 000000000..af235c941
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/UsageServicePackagesApi.md
@@ -0,0 +1,68 @@
+# UsageServicePackagesApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**getServicePackageQuotaHistory**](UsageServicePackagesApi.md#getServicePackageQuotaHistory) | **GET** v3/service-packages-quota-history | Service package quota history.
+
+
+
+# **getServicePackageQuotaHistory**
+> ServicePackageQuotaHistoryResponse getServicePackageQuotaHistory(limit, after, order)
+
+Service package quota history.
+
+Get your quota usage history. This API is available only for commercial accounts. Aggregator accounts can see their own and tenant quota usage data. Data is in ascending order based on creation time. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/service-packages-quota-history \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.UsageServicePackagesApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+UsageServicePackagesApi apiInstance = new UsageServicePackagesApi();
+Integer limit = 56; // Integer | Maximum number of quota history entries in one paged response.
+String after = "after_example"; // String | Results after specified entry ID.
+String order = "order_example"; // String | Record order. Acceptable values: ASC, DESC. Default: ASC.
+try {
+ ServicePackageQuotaHistoryResponse result = apiInstance.getServicePackageQuotaHistory(limit, after, order);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling UsageServicePackagesApi#getServicePackageQuotaHistory");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **limit** | **Integer**| Maximum number of quota history entries in one paged response. | [optional]
+ **after** | **String**| Results after specified entry ID. | [optional]
+ **order** | **String**| Record order. Acceptable values: ASC, DESC. Default: ASC. | [optional] [enum: ASC, DESC]
+
+### Return type
+
+[**ServicePackageQuotaHistoryResponse**](ServicePackageQuotaHistoryResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/UsageStatisticsApi.md b/backends/pelioncloud_devicemanagement/docs/UsageStatisticsApi.md
new file mode 100644
index 000000000..a15bcc23e
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/docs/UsageStatisticsApi.md
@@ -0,0 +1,78 @@
+# UsageStatisticsApi
+
+All URIs are relative to *https://api.us-east-1.mbedcloud.com*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**getStatisticsView**](UsageStatisticsApi.md#getStatisticsView) | **GET** v3/billing-statistics | Get statistics view of Device Management usage.
+
+
+
+# **getStatisticsView**
+> StatisticsViewResponse getStatisticsView(interval, start, end, period, limit, after, order, include)
+
+Get statistics view of Device Management usage.
+
+Fetch the statistics view of Device Management usage in time series for the currently authenticated commercial account. The response contains the additional counters below, if the account business model is set to `API calls` by the account administrator: - device_to_pelion_messages - pelion_to_device_messages - pelion_to_webapp_notifications - rest_api_requests_with_api_key_token - rest_api_requests_with_user_token The return data is retrieved during a defined time window and grouped by defined interval. The time window for data retrieval is defined as a range, that can be either absolute (for instance, using timestamps) or relative (referring to the 'period' parameter). Range start is inclusive, while range end is exclusive. The specified range must be equal to or greater than the specified interval. Returned data does not include any tenant usage. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/billing-statistics?start=2019-11-01T00:00:00.000Z&end=2019-12-01T00:00:00.000Z&interval=1d \\ -H 'Authorization: Bearer <access_key>' ```
+
+### Example
+```java
+// Import classes:
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiClient;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.ApiException;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.Configuration;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.auth.*;
+//import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api.UsageStatisticsApi;
+
+ApiClient defaultClient = Configuration.getDefaultApiClient();
+
+// Configure API key authorization: Bearer
+ApiKeyAuth Bearer = (ApiKeyAuth) defaultClient.getAuthentication("Bearer");
+Bearer.setApiKey("YOUR API KEY");
+// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
+//Bearer.setApiKeyPrefix("Token");
+
+UsageStatisticsApi apiInstance = new UsageStatisticsApi();
+String interval = "interval_example"; // String | Group the data by this interval in minutes, hours, days, weeks or months. One week is normalized to 7 days. Sample values: 5m, 2h, 3d, 4w, 1mo, 3mo. Minimum supported interval is 5 minutes. The specified interval must not be greater than the specified range.
+DateTime start = new DateTime(); // DateTime | Start time of the statistics view in RFC3339 date-time format, with millisecond accuracy and UTC time zone. The parameter is mandatory if the period is not specified. Do not set the parameter if you have specified the period. Fetch data with timestamp greater than or equal to this value. Sample value: 2017-02-07T09:20:56.990Z. The specified range must be equal to or greater than 5 minutes. Maximum supported range is 98 days when using timestamps to specify the range.
+DateTime end = new DateTime(); // DateTime | End time of the statistics view in RFC3339 date-time format with millisecond accuracy and UTC time zone. The parameter is mandatory if the period is not specified. Do not set the parameter if you have specified the period. Fetch the data with timestamp less than this value. Sample value: 2017-02-07T09:20:56.990Z. The specified range must be equal to or greater than 5 minutes. Maximum supported range is 98 days when using timestamps to specify the range.
+String period = "period_example"; // String | Period. Alternative for specifying the range if not using start and end parameters. The parameter is mandatory if the start and end parameters are not specified. Do not set the parameter if you have specified the start and end parameters. Fetch the data for the period in minutes, hours, days, weeks or months. One week is normalized to 7 days. Sample values: 5m, 2h, 3d, 4w, 1mo, 3mo. The allowed periods (inclusive) are 5m-141120m/1h-2352h/1d-98d/1w-14w/1mo-3mo.
+Integer limit = 50; // Integer | Maximum number of statistics view records in one paginated response.
+String after = "after_example"; // String | Results after specified record ID.
+String order = "order_example"; // String | Record order. Acceptable values (case insensitive): ASC, DESC. Default: ASC.
+String include = "include_example"; // String | Comma-separated additional data to return. Currently supported: total_count.
+try {
+ StatisticsViewResponse result = apiInstance.getStatisticsView(interval, start, end, period, limit, after, order, include);
+ System.out.println(result);
+} catch (ApiException e) {
+ System.err.println("Exception when calling UsageStatisticsApi#getStatisticsView");
+ e.printStackTrace();
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **interval** | **String**| Group the data by this interval in minutes, hours, days, weeks or months. One week is normalized to 7 days. Sample values: 5m, 2h, 3d, 4w, 1mo, 3mo. Minimum supported interval is 5 minutes. The specified interval must not be greater than the specified range. |
+ **start** | **DateTime**| Start time of the statistics view in RFC3339 date-time format, with millisecond accuracy and UTC time zone. The parameter is mandatory if the period is not specified. Do not set the parameter if you have specified the period. Fetch data with timestamp greater than or equal to this value. Sample value: 2017-02-07T09:20:56.990Z. The specified range must be equal to or greater than 5 minutes. Maximum supported range is 98 days when using timestamps to specify the range. | [optional]
+ **end** | **DateTime**| End time of the statistics view in RFC3339 date-time format with millisecond accuracy and UTC time zone. The parameter is mandatory if the period is not specified. Do not set the parameter if you have specified the period. Fetch the data with timestamp less than this value. Sample value: 2017-02-07T09:20:56.990Z. The specified range must be equal to or greater than 5 minutes. Maximum supported range is 98 days when using timestamps to specify the range. | [optional]
+ **period** | **String**| Period. Alternative for specifying the range if not using start and end parameters. The parameter is mandatory if the start and end parameters are not specified. Do not set the parameter if you have specified the start and end parameters. Fetch the data for the period in minutes, hours, days, weeks or months. One week is normalized to 7 days. Sample values: 5m, 2h, 3d, 4w, 1mo, 3mo. The allowed periods (inclusive) are 5m-141120m/1h-2352h/1d-98d/1w-14w/1mo-3mo. | [optional]
+ **limit** | **Integer**| Maximum number of statistics view records in one paginated response. | [optional] [default to 50]
+ **after** | **String**| Results after specified record ID. | [optional]
+ **order** | **String**| Record order. Acceptable values (case insensitive): ASC, DESC. Default: ASC. | [optional]
+ **include** | **String**| Comma-separated additional data to return. Currently supported: total_count. | [optional]
+
+### Return type
+
+[**StatisticsViewResponse**](StatisticsViewResponse.md)
+
+### Authorization
+
+[Bearer](../README.md#Bearer)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
diff --git a/backends/pelioncloud_devicemanagement/docs/UserInfoRespList.md b/backends/pelioncloud_devicemanagement/docs/UserInfoRespList.md
index 26b8a935b..5a570452a 100644
--- a/backends/pelioncloud_devicemanagement/docs/UserInfoRespList.md
+++ b/backends/pelioncloud_devicemanagement/docs/UserInfoRespList.md
@@ -4,7 +4,7 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**after** | **String** | The entity ID to fetch after the given one. | [optional]
+**after** | **String** | The entity ID to retrieve after the given one. | [optional]
**data** | [**List<UserInfoResp>**](UserInfoResp.md) | A list of entities. |
**hasMore** | **Boolean** | Flag indicating whether there are more results. |
**limit** | **Integer** | The number of results to return (2-1000), or equal to `total_count`. |
diff --git a/backends/pelioncloud_devicemanagement/docs/UserInterfaceConfigurationColorsApi.md b/backends/pelioncloud_devicemanagement/docs/UserInterfaceConfigurationColorsApi.md
index f28fd47fd..f46179b79 100644
--- a/backends/pelioncloud_devicemanagement/docs/UserInterfaceConfigurationColorsApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/UserInterfaceConfigurationColorsApi.md
@@ -25,7 +25,7 @@ Method | HTTP request | Description
Updates an array of dark theme branding colors.
-Update an array of dark theme branding colors. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/branding-colors/dark \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ '[{ \"reference\": \"primary\", \"color\": \"#f3f93e\" }]' ```
+Update an array of dark theme branding colors. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/branding-colors/dark \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ '[{ \"reference\": \"primary\", \"color\": \"#f3f93e\" }]' ```
### Example
```java
@@ -45,7 +45,7 @@ Bearer.setApiKey("YOUR API KEY");
//Bearer.setApiKeyPrefix("Token");
UserInterfaceConfigurationColorsApi apiInstance = new UserInterfaceConfigurationColorsApi();
-List body = Arrays.asList(new BrandingColor()); // List | List of branding colors.
+List body = Arrays.asList(new BrandingColorUpdate()); // List | List of branding colors.
try {
Void result = apiInstance.bulkSetDarkColors(body);
System.out.println(result);
@@ -59,7 +59,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **body** | [**List<BrandingColor>**](BrandingColor.md)| List of branding colors. |
+ **body** | [**List<BrandingColorUpdate>**](BrandingColorUpdate.md)| List of branding colors. |
### Return type
@@ -80,7 +80,7 @@ Name | Type | Description | Notes
Updates an array of light theme branding colors.
-Update an array of light theme branding colors. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/branding-colors/light \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ '[{ \"reference\": \"primary\", \"color\": \"purple\" }]' ```
+Update an array of light theme branding colors. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/branding-colors/light \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ '[{ \"reference\": \"primary\", \"color\": \"purple\" }]' ```
### Example
```java
@@ -100,7 +100,7 @@ Bearer.setApiKey("YOUR API KEY");
//Bearer.setApiKeyPrefix("Token");
UserInterfaceConfigurationColorsApi apiInstance = new UserInterfaceConfigurationColorsApi();
-List body = Arrays.asList(new BrandingColor()); // List | List of branding colors.
+List body = Arrays.asList(new BrandingColorUpdate()); // List | List of branding colors.
try {
Void result = apiInstance.bulkSetLightColors(body);
System.out.println(result);
@@ -114,7 +114,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **body** | [**List<BrandingColor>**](BrandingColor.md)| List of branding colors. |
+ **body** | [**List<BrandingColorUpdate>**](BrandingColorUpdate.md)| List of branding colors. |
### Return type
@@ -135,7 +135,7 @@ Name | Type | Description | Notes
Delete all colors.
-Delete account branding colors for all themes. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/branding-colors -H 'Authorization: Bearer API_KEY'`
+Delete account branding colors for all themes. <b>Note:</b> This endpoint is restricted to administrators. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/branding-colors -H 'Authorization: Bearer <access_key>'`
### Example
```java
@@ -186,7 +186,7 @@ This endpoint does not need any parameter.
Delete colors in the dark theme.
-Delete account dark theme branding colors. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/branding-colors/dark -H 'Authorization: Bearer API_KEY'`
+Delete account dark theme branding colors. <b>Note:</b> This endpoint is restricted to administrators. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/branding-colors/dark -H 'Authorization: Bearer <access_key>'`
### Example
```java
@@ -237,7 +237,7 @@ This endpoint does not need any parameter.
Delete colors in the light theme.
-Delete account light theme branding colors. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/branding-colors/light -H 'Authorization: Bearer API_KEY'`
+Delete account light theme branding colors. <b>Note:</b> This endpoint is restricted to administrators. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/branding-colors/light -H 'Authorization: Bearer <access_key>'`
### Example
```java
@@ -288,7 +288,7 @@ This endpoint does not need any parameter.
Get dark theme branding color.
-Retrieve the requested dark theme branding color. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/branding-colors/dark/{reference} \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve the requested dark theme branding color. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/branding-colors/dark/{reference} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -322,7 +322,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color]
+ **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color, menu_background_color, menu_text_color, nav_menu_background, nav_menu_background_font_color, nav_menu_active_background, nav_menu_active_background_font_color, nav_menu_highlight, nav_menu_highlight_font_color]
### Return type
@@ -343,7 +343,7 @@ Name | Type | Description | Notes
Get dark theme branding colors.
-Retrieve the dark theme branding colors. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/branding-colors/dark \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve the dark theme branding colors. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/branding-colors/dark \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -394,7 +394,7 @@ This endpoint does not need any parameter.
Get light theme branding color.
-Retrieve the requested light theme branding color. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/branding-colors/light/{reference} \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve the requested light theme branding color. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/branding-colors/light/{reference} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -428,7 +428,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color]
+ **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color, menu_background_color, menu_text_color, nav_menu_background, nav_menu_background_font_color, nav_menu_active_background, nav_menu_active_background_font_color, nav_menu_highlight, nav_menu_highlight_font_color]
### Return type
@@ -449,7 +449,7 @@ Name | Type | Description | Notes
Get light theme branding colors.
-Retrieve the light theme branding colors. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/branding-colors/light \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve the light theme branding colors. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/branding-colors/light \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -500,7 +500,7 @@ This endpoint does not need any parameter.
Reset branding color to default.
-Resets the branding color to its dark theme default. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/branding-colors/light/{reference} \\ -H 'Authorization: Bearer <api_key>' ```
+Resets the branding color to its dark theme default. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/branding-colors/light/{reference} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -534,7 +534,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color]
+ **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color, menu_background_color, menu_text_color, nav_menu_background, nav_menu_background_font_color, nav_menu_active_background, nav_menu_active_background_font_color, nav_menu_highlight, nav_menu_highlight_font_color]
### Return type
@@ -555,7 +555,7 @@ Name | Type | Description | Notes
Reset branding color to default.
-Resets the branding color to its light theme default. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/branding-colors/light/{reference} \\ -H 'Authorization: Bearer <api_key>' ```
+Resets the branding color to its light theme default. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/branding-colors/light/{reference} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -589,7 +589,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color]
+ **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color, menu_background_color, menu_text_color, nav_menu_background, nav_menu_background_font_color, nav_menu_active_background, nav_menu_active_background_font_color, nav_menu_highlight, nav_menu_highlight_font_color]
### Return type
@@ -610,7 +610,7 @@ Name | Type | Description | Notes
Updates a dark theme branding color.
-Update a dark theme branding color. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/branding-colors/dark/primary \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{ \"color\": \"#f3f93e\" }' ```
+Update a dark theme branding color. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/branding-colors/dark/primary \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"color\": \"#f3f93e\" }' ```
### Example
```java
@@ -645,7 +645,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color]
+ **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color, menu_background_color, menu_text_color, nav_menu_background, nav_menu_background_font_color, nav_menu_active_background, nav_menu_active_background_font_color, nav_menu_highlight, nav_menu_highlight_font_color]
**body** | [**BrandingColor**](BrandingColor.md)| The branding color. |
### Return type
@@ -667,7 +667,7 @@ Name | Type | Description | Notes
Updates light theme branding color.
-Update light theme branding color. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/branding-colors/light/primary \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{ \"color\": \"purple\" }' ```
+Update light theme branding color. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/branding-colors/light/primary \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"color\": \"purple\" }' ```
### Example
```java
@@ -702,7 +702,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color]
+ **reference** | **String**| The name of the branding color. | [enum: error_color, primary, secondary, success_color, warning_color, canvas_background, canvas_background_font_color, workspace_background, workspace_background_font_color, info_color, info_font_color, primary_font_color, secondary_font_color, error_font_color, success_font_color, warning_font_color, menu_background_color, menu_text_color, nav_menu_background, nav_menu_background_font_color, nav_menu_active_background, nav_menu_active_background_font_color, nav_menu_highlight, nav_menu_highlight_font_color]
**body** | [**BrandingColor**](BrandingColor.md)| The branding color. |
### Return type
diff --git a/backends/pelioncloud_devicemanagement/docs/UserInterfaceConfigurationImagesApi.md b/backends/pelioncloud_devicemanagement/docs/UserInterfaceConfigurationImagesApi.md
index 37d17b4c2..43bc9b09c 100644
--- a/backends/pelioncloud_devicemanagement/docs/UserInterfaceConfigurationImagesApi.md
+++ b/backends/pelioncloud_devicemanagement/docs/UserInterfaceConfigurationImagesApi.md
@@ -25,7 +25,7 @@ Method | HTTP request | Description
Revert an image to dark theme default.
-Revert an account branding image to dark theme default. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/branding-images/dark/{reference}/clear \\ -H 'Authorization: Bearer <api_key>' ```
+Revert an account branding image to dark theme default. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/branding-images/dark/{reference}/clear \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -59,7 +59,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
+ **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, app_logo_landscape, app_logo_portrait, app_logo_square, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
### Return type
@@ -80,7 +80,7 @@ Name | Type | Description | Notes
Revert an image to light theme default.
-Revert an account branding image to light theme default. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/branding-images/light/{reference}/clear \\ -H 'Authorization: Bearer <api_key>' ```
+Revert an account branding image to light theme default. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/branding-images/light/{reference}/clear \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -114,7 +114,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
+ **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, app_logo_landscape, app_logo_portrait, app_logo_square, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
### Return type
@@ -135,7 +135,7 @@ Name | Type | Description | Notes
Delete images in the dark theme.
-Delete account dark theme branding images. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/branding-images/dark -H 'Authorization: Bearer API_KEY'`
+Delete account dark theme branding images. <b>Note:</b> This endpoint is restricted to administrators. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/branding-images/dark -H 'Authorization: Bearer <access_key>'`
### Example
```java
@@ -186,7 +186,7 @@ This endpoint does not need any parameter.
Delete all images.
-Delete account branding images for all themes. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/branding-images -H 'Authorization: Bearer API_KEY'`
+Delete account branding images for all themes. <b>Note:</b> This endpoint is restricted to administrators. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/branding-images -H 'Authorization: Bearer <access_key>'`
### Example
```java
@@ -237,7 +237,7 @@ This endpoint does not need any parameter.
Delete images in the light theme.
-Delete account light theme branding images. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/branding-images/light -H 'Authorization: Bearer API_KEY'`
+Delete account light theme branding images. <b>Note:</b> This endpoint is restricted to administrators. **Example usage:** `curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/branding-images/light -H 'Authorization: Bearer <access_key>'`
### Example
```java
@@ -288,7 +288,7 @@ This endpoint does not need any parameter.
Get metadata of all dark theme images.
-Retrieve metadata for all dark theme branding images. **Example:** `curl -X GET https://api.us-east-1.mbedcloud.com/v3/branding-images/dark \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve metadata for all dark theme branding images. **Example:** `curl -X GET https://api.us-east-1.mbedcloud.com/v3/branding-images/dark \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -339,7 +339,7 @@ This endpoint does not need any parameter.
Get metadata of all light theme images.
-Retrieve the metadata of all light theme branding images. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/branding-images/light \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve the metadata of all light theme branding images. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/branding-images/light \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -390,7 +390,7 @@ This endpoint does not need any parameter.
Get metadata of a dark theme image.
-Retrieve metadata for one account dark theme branding image. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/branding-images/dark/{reference} \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve metadata for one account dark theme branding image. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/branding-images/dark/{reference} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -424,7 +424,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
+ **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, app_logo_landscape, app_logo_portrait, app_logo_square, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
### Return type
@@ -445,7 +445,7 @@ Name | Type | Description | Notes
Get metadata of a light theme image.
-Retrieve metadata for one account light theme branding image. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/branding-images/light/{reference} \\ -H 'Authorization: Bearer <api_key>' ```
+Retrieve metadata for one account light theme branding image. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/branding-images/light/{reference} \\ -H 'Authorization: Bearer <access_key>' ```
### Example
```java
@@ -479,7 +479,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
+ **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, app_logo_landscape, app_logo_portrait, app_logo_square, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
### Return type
@@ -500,7 +500,7 @@ Name | Type | Description | Notes
Upload a dark theme image.
-Upload a new account branding image in the dark theme in PNG or JPEG format. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/branding-images/dark/{reference}/upload \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: image/png' --data-binary '@myimage.png' ```
+Upload a new account branding image in the dark theme in PNG or JPEG format. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/branding-images/dark/{reference}/upload \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: image/png' --data-binary '@myimage.png' ```
### Example
```java
@@ -535,7 +535,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
+ **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, app_logo_landscape, app_logo_portrait, app_logo_square, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
**body** | [**String**](String.md)| The image in PNG or JPEG format. |
### Return type
@@ -557,7 +557,7 @@ Name | Type | Description | Notes
Upload a dark theme image.
-Upload a new account branding image as form data in the dark theme in PNG or JPEG format.
+Upload a new account branding image as form data in the dark theme in PNG or JPEG format. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -592,7 +592,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
+ **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, app_logo_landscape, app_logo_portrait, app_logo_square, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
**image** | **File**| The image in PNG or JPEG format as multipart form data. |
### Return type
@@ -614,7 +614,7 @@ Name | Type | Description | Notes
Upload a light theme image.
-Upload a new account light theme branding image in PNG or JPEG format. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/branding-images/light/{reference}/upload \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-type: image/png' --data-binary '@myimage.png' ```
+Upload a new account light theme branding image in PNG or JPEG format. <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/branding-images/light/{reference}/upload \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: image/png' --data-binary '@myimage.png' ```
### Example
```java
@@ -649,7 +649,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
+ **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, app_logo_landscape, app_logo_portrait, app_logo_square, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
**body** | [**String**](String.md)| The image in PNG or JPEG format. |
### Return type
@@ -671,7 +671,7 @@ Name | Type | Description | Notes
Upload a light theme image.
-Upload a new account branding image as form data in the light theme in PNG or JPEG format.
+Upload a new account branding image as form data in the light theme in PNG or JPEG format. <b>Note:</b> This endpoint is restricted to administrators.
### Example
```java
@@ -706,7 +706,7 @@ try {
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
- **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
+ **reference** | **String**| Name of the branding images (icon or picture). | [enum: brand_logo_portrait, brand_logo_square, brand_logo_landscape, brand_logo_email, app_logo_landscape, app_logo_portrait, app_logo_square, desktop_background_landscape, desktop_background_square, desktop_background_portrait, carousel_image_portrait_0, carousel_image_portrait_1, carousel_image_portrait_2, carousel_image_portrait_3, carousel_image_portrait_4, carousel_image_portrait_5, carousel_image_portrait_6, carousel_image_portrait_7, carousel_image_portrait_8, carousel_image_portrait_9, carousel_image_square_0, carousel_image_square_1, carousel_image_square_2, carousel_image_square_3, carousel_image_square_4, carousel_image_square_5, carousel_image_square_6, carousel_image_square_7, carousel_image_square_8, carousel_image_square_9, carousel_image_landscape_0, carousel_image_landscape_1, carousel_image_landscape_2, carousel_image_landscape_3, carousel_image_landscape_4, carousel_image_landscape_5, carousel_image_landscape_6, carousel_image_landscape_7, carousel_image_landscape_8, carousel_image_landscape_9]
**image** | **File**| The image in PNG or JPEG format as multipart form data. |
### Return type
diff --git a/backends/pelioncloud_devicemanagement/docs/UserInvitationRespList.md b/backends/pelioncloud_devicemanagement/docs/UserInvitationRespList.md
index ffb2bab6e..c40446e93 100644
--- a/backends/pelioncloud_devicemanagement/docs/UserInvitationRespList.md
+++ b/backends/pelioncloud_devicemanagement/docs/UserInvitationRespList.md
@@ -4,7 +4,7 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**after** | **String** | The entity ID to fetch after the given one. | [optional]
+**after** | **String** | The entity ID to retrieve after the given one. | [optional]
**data** | [**List<UserInvitationResp>**](UserInvitationResp.md) | A list of entities. |
**hasMore** | **Boolean** | Flag indicating whether there are more results. |
**limit** | **Integer** | The number of results to return (2-1000), or equal to `total_count`. |
diff --git a/backends/pelioncloud_devicemanagement/docs/UserUpdateReq.md b/backends/pelioncloud_devicemanagement/docs/UserUpdateReq.md
index 4639d18d1..febbd3dad 100644
--- a/backends/pelioncloud_devicemanagement/docs/UserUpdateReq.md
+++ b/backends/pelioncloud_devicemanagement/docs/UserUpdateReq.md
@@ -10,7 +10,7 @@ Name | Type | Description | Notes
**groups** | **List<String>** | A list of group IDs this user belongs to. Can be updated by the Account Admin only. | [optional]
**isGtcAccepted** | **Boolean** | A flag indicating that the user has accepted General Terms and Conditions. | [optional]
**isMarketingAccepted** | **Boolean** | A flag indicating that the user has consented to receive marketing information. | [optional]
-**isTotpEnabled** | **Boolean** | A flag indicating whether mandatory two-factor authentication (TOTP) is enabled. | [optional]
+**isTotpEnabled** | **Boolean** | A flag indicating whether two-factor authentication (TOTP) is enabled. An account administrator can disable it, but cannot enable it for other users. | [optional]
**loginProfiles** | [**List<LoginProfile>**](LoginProfile.md) | 'A list of login profiles for the user, specified as identity providers associated with the user. Only the ID attribute of the login profile should be set in the request object. The list cannot be empty. Only an account admin may update login profiles.' | [optional]
**phoneNumber** | **String** | Phone number. | [optional]
**status** | [**StatusEnum**](#StatusEnum) | The status of the user. ENROLLING indicates that the user is in the middle of the enrollment process. INVITED means that the user has not accepted the invitation request. RESET means that the password must be changed immediately. INACTIVE users are locked out and not permitted to use the system. Can be changed by the Aggregator Admin only. | [optional]
diff --git a/backends/pelioncloud_devicemanagement/docs/Webhook.md b/backends/pelioncloud_devicemanagement/docs/Webhook.md
index ec7d5effc..714e971d7 100644
--- a/backends/pelioncloud_devicemanagement/docs/Webhook.md
+++ b/backends/pelioncloud_devicemanagement/docs/Webhook.md
@@ -5,7 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**headers** | **Map<String, String>** | The headers (key/value) sent with the notification. Optional. | [optional]
-**serialization** | **Object** | Serialization configuration for a channel. | [optional]
+**serialization** | [**SerializationConfigData**](SerializationConfigData.md) | | [optional]
**url** | **String** | The URL to which the notifications are sent. We recommend that you serve this URL over HTTPS. |
diff --git a/backends/pelioncloud_devicemanagement/docs/WebsocketChannel.md b/backends/pelioncloud_devicemanagement/docs/WebsocketChannel.md
index 4d1ba4ed7..f0743d51a 100644
--- a/backends/pelioncloud_devicemanagement/docs/WebsocketChannel.md
+++ b/backends/pelioncloud_devicemanagement/docs/WebsocketChannel.md
@@ -4,9 +4,9 @@
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
-**queueSize** | **Integer** | Number of events in the channel's event queue waiting to be delivered. | [optional]
-**serialization** | **Object** | Serialization configuration for a channel. | [optional]
-**status** | [**StatusEnum**](#StatusEnum) | Channel status is 'connected' when the channel has an active WebSocket bound to it. The state is 'disconnected' when either the channel or the WebSocket bound to it is closed. | [optional]
+**queueSize** | **Integer** | Number of events in the channel's event queue waiting to be delivered. If the server cannot determine the queue size the value will be set to `-1`. | [optional]
+**serialization** | [**SerializationConfigData**](SerializationConfigData.md) | | [optional]
+**status** | [**StatusEnum**](#StatusEnum) | Channel status is 'connected' when the channel has an active WebSocket bound to it. The status is 'disconnected' when either the channel or the WebSocket bound to it is closed and 'unknown' when the server cannot determine it. | [optional]
@@ -15,6 +15,7 @@ Name | Value
---- | -----
CONNECTED | "connected"
DISCONNECTED | "disconnected"
+UNKNOWN | "unknown"
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountAccessKeysApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountAccessKeysApi.java
new file mode 100644
index 000000000..92072909f
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountAccessKeysApi.java
@@ -0,0 +1,51 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AccessKey;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AccessKeyList;
+
+public interface AccountAccessKeysApi {
+ /**
+ * Get access key. Retrieve details of an access key. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/access-keys/{access_key_id} \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @param accessKeyId
+ * The ID of the access key to retrieve. (required)
+ * @return Call<AccessKey>
+ */
+ @GET("v3/access-keys/{access_key_id}")
+ Call getAccessKey(@retrofit2.http.Path(value = "access_key_id", encoded = true) String accessKeyId);
+
+ /**
+ * Get all access keys. Retrieve an array of access keys. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/access-keys \\
+ * -H 'Authorization: Bearer <access_key>' ```
+ *
+ * @param limit
+ * The number of results to return (2-1000). Default 50. (optional, default to 50)
+ * @param after
+ * The entity ID to retrieve after the given one. (optional)
+ * @param order
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
+ * @param include
+ * Comma-separated additional data to return. Currently supported: total_count. (optional)
+ * @param statusEq
+ * Status filter. (optional)
+ * @param applicationIdEq
+ * Application filter. (optional)
+ * @return Call<AccessKeyList>
+ */
+ @GET("v3/access-keys")
+ Call
+ getAllAccessKeys(@retrofit2.http.Query("limit") Integer limit, @retrofit2.http.Query("after") String after,
+ @retrofit2.http.Query("order") String order, @retrofit2.http.Query("include") String include,
+ @retrofit2.http.Query("status__eq") String statusEq,
+ @retrofit2.http.Query("application_id__eq") String applicationIdEq);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountApiKeysApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountApiKeysApi.java
index 261a293bc..45b924e4c 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountApiKeysApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountApiKeysApi.java
@@ -16,9 +16,10 @@
public interface AccountApiKeysApi {
/**
- * Add API key to a list of groups. Add API key to groups. **Example:** ``` curl -X POST
+ * Add API key to a list of groups. Add API key to groups. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id}/groups \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d
* '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
* ```
*
@@ -34,9 +35,10 @@ Call addApiKeyToGroups(@retrofit2.http.Path(value = "apikey_id",
@retrofit2.http.Body List body);
/**
- * Add API key to a list of groups. Add API key to groups. **Example:** ``` curl -X POST
+ * Add API key to a list of groups. Add API key to groups. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id}/groups/add \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d
* '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
* ```
*
@@ -54,8 +56,8 @@ Call addApiKeyToGroups(@retrofit2.http.Path(value = "apikey_id",
/**
* Add API key to a list of groups. Add API key to groups. **Example:** ``` curl -X POST
- * https://api.us-east-1.mbedcloud.com/v3/api-keys/me/groups \\ -H 'Authorization: Bearer <api_key>'
- * \\ -H 'content-type: application/json' \\ -d
+ * https://api.us-east-1.mbedcloud.com/v3/api-keys/me/groups \\ -H 'Authorization: Bearer
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d
* '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
* ```
*
@@ -70,7 +72,7 @@ Call addApiKeyToGroups(@retrofit2.http.Path(value = "apikey_id",
/**
* Add API key to a list of groups. Add API key to groups. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/api-keys/me/groups/add/ \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d
* '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
* ```
*
@@ -85,7 +87,8 @@ Call addApiKeyToGroups(@retrofit2.http.Path(value = "apikey_id",
/**
* Create a new API key. Create a new API key. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/api-keys -d '{\"name\": \"MyKey1\"}' \\ -H
- * 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' ```
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json'
+ * ```
*
* @param body
* The details of the API key to create. (required)
@@ -97,8 +100,8 @@ Call addApiKeyToGroups(@retrofit2.http.Path(value = "apikey_id",
/**
* Delete API key. Delete the API key. **Example:** ``` curl -X DELETE
- * https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id} \\ -H 'Authorization: Bearer <api_key>'
- * ```
+ * https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id} \\ -H 'Authorization: Bearer
+ * <access_key>' ```
*
* @param apikeyId
* The ID of the API key to delete. (required)
@@ -108,23 +111,22 @@ Call addApiKeyToGroups(@retrofit2.http.Path(value = "apikey_id",
Call deleteApiKey(@retrofit2.http.Path(value = "apikey_id", encoded = true) String apikeyId);
/**
- * Get all API keys. Retrieve API keys in an array, optionally filtered by the owner. **Example:**
+ * Get all API keys. Retrieve an array of API keys, optionally filtered by the owner. **Example:**
* ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/api-keys \\ -H 'Authorization: Bearer
- * <api_key>' ```
+ * <access_key>' ```
*
* @param limit
* The number of results to return (2-1000). Default 50. (optional, default to 50)
* @param after
- * The entity ID to fetch after the given one. (optional)
+ * The entity ID to retrieve after the given one. (optional)
* @param order
- * Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. (optional, default to
- * ASC)
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
* @param include
* Comma-separated additional data to return. Currently supported: total_count. (optional)
* @param keyEq
* API key filter. Do not include the private portion of the API key (the last 32 characters). (optional)
* @param ownerEq
- * Owner name filter. (optional)
+ * Owner name filter. <b>Note:</b> This parameter is restricted to administrators. (optional)
* @return Call<ApiKeyInfoRespList>
*/
@GET("v3/api-keys")
@@ -134,9 +136,9 @@ Call addApiKeyToGroups(@retrofit2.http.Path(value = "apikey_id",
@retrofit2.http.Query("key__eq") String keyEq, @retrofit2.http.Query("owner__eq") String ownerEq);
/**
- * Get API key details. Retrieve API key details. **Example:** ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id} \\ -H 'Authorization: Bearer <api_key>'
- * ```
+ * Get API key. Retrieve details of an API key. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id} \\ -H 'Authorization: Bearer
+ * <access_key>' ```
*
* @param apikeyId
* The ID of the API key to retrieve. (required)
@@ -146,19 +148,19 @@ Call addApiKeyToGroups(@retrofit2.http.Path(value = "apikey_id",
Call getApiKey(@retrofit2.http.Path(value = "apikey_id", encoded = true) String apikeyId);
/**
- * Get groups of the API key. Retrieve groups associated with the API key. **Example:** ``` curl -X
+ * Get policy groups of an API key. Retrieve an array of policy groups associated with an API key.
+ * <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X
* GET https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id}/groups \\ -H 'Authorization: Bearer
- * <api_key>' ```
+ * <access_key>' ```
*
* @param apikeyId
* The ID of the API key. (required)
* @param limit
* The number of results to return (2-1000). Default 50. (optional, default to 50)
* @param after
- * The entity ID to fetch after the given one. (optional)
+ * The entity ID to retrieve after the given one. (optional)
* @param order
- * Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. (optional, default to
- * ASC)
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
* @param include
* Comma-separated additional data to return. Currently supported: total_count. (optional)
* @return Call<GroupSummaryList>
@@ -170,17 +172,16 @@ Call addApiKeyToGroups(@retrofit2.http.Path(value = "apikey_id",
@retrofit2.http.Query("order") String order, @retrofit2.http.Query("include") String include);
/**
- * Get groups of the API key. Retrieve groups associated with the API key. **Example:** ``` curl -X
- * GET https://api.us-east-1.mbedcloud.com/v3/api-keys/me/groups \\ -H 'Authorization: Bearer
- * <api_key>' ```
+ * Get policy groups of the current API key. Retrieve an array of policy groups associated with the current API key.
+ * **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/api-keys/me/groups \\ -H
+ * 'Authorization: Bearer <access_key>' ```
*
* @param limit
* The number of results to return (2-1000). Default 50. (optional, default to 50)
* @param after
- * The entity ID to fetch after the given one. (optional)
+ * The entity ID to retrieve after the given one. (optional)
* @param order
- * Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. (optional, default to
- * ASC)
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
* @param include
* Comma-separated additional data to return. Currently supported: total_count. (optional)
* @return Call<GroupSummaryList>
@@ -192,8 +193,8 @@ Call getGroupsOfMyApiKey(@retrofit2.http.Query("limit") Intege
@retrofit2.http.Query("include") String include);
/**
- * Get API key details. Retrieve API key details. **Example:** ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/api-keys/me \\ -H 'Authorization: Bearer <api_key>'
+ * Get current API key. Retrieve details of current API key. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/api-keys/me \\ -H 'Authorization: Bearer <access_key>'
* ```
*
* @return Call<ApiKeyInfoResp>
@@ -202,9 +203,10 @@ Call getGroupsOfMyApiKey(@retrofit2.http.Query("limit") Intege
Call getMyApiKey();
/**
- * Remove API key from groups. Remove API key from groups. **Example:** ``` curl -X DELETE
+ * Remove API key from groups. Remove API key from groups. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X DELETE
* https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id}/groups \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d
* '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
* ```
*
@@ -221,9 +223,10 @@ Call getGroupsOfMyApiKey(@retrofit2.http.Query("limit") Intege
@retrofit2.http.Body List body);
/**
- * Remove API key from groups. Remove API key from groups. **Example:** ``` curl -X POST
+ * Remove API key from groups. Remove API key from groups. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id}/groups/remove \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d
* '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
* ```
*
@@ -242,7 +245,7 @@ Call getGroupsOfMyApiKey(@retrofit2.http.Query("limit") Intege
/**
* Remove API key from groups. Remove API key from groups. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/api-keys/me/groups/remove \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d
* '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
* ```
*
@@ -256,8 +259,8 @@ Call getGroupsOfMyApiKey(@retrofit2.http.Query("limit") Intege
/**
* Remove API key from groups. Remove API key from groups. **Example:** ``` curl -X DELETE
- * https://api.us-east-1.mbedcloud.com/v3/api-keys/me/groups \\ -H 'Authorization: Bearer <api_key>'
- * \\ -H 'content-type: application/json' \\ -d
+ * https://api.us-east-1.mbedcloud.com/v3/api-keys/me/groups \\ -H 'Authorization: Bearer
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d
* '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
* ```
*
@@ -272,7 +275,7 @@ Call getGroupsOfMyApiKey(@retrofit2.http.Query("limit") Intege
/**
* Reset the secret key. Reset the secret key of the API key. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id}/reset-secret \\ -H 'Authorization: Bearer
- * <api_key>' ```
+ * <access_key>' ```
*
* @param apikeyId
* The ID of the API key to reset. (required)
@@ -286,9 +289,9 @@ Call resetSecret(@retrofit2.http.Path(value = "apikey_id", encod
/**
* Update API key details. Update API key details. **Example:** `curl -X PUT
- * https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id} \\ -H 'Authorization: Bearer <api_key>'
- * \\ -H 'content-type: application/json' \\ -d '{\"name\": \"TestApiKey25\"}'
- * ```
+ * https://api.us-east-1.mbedcloud.com/v3/api-keys/{apikey_id} \\ -H 'Authorization: Bearer
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\":
+ * \"TestApiKey25\"}' ```
*
* @param apikeyId
* The ID of the API key to update. (required)
@@ -302,7 +305,7 @@ Call updateApiKey(@retrofit2.http.Path(value = "apikey_id", enco
/**
* Update API key details. Update API key details. **Example:** ``` curl -X PUT
- * https://api.us-east-1.mbedcloud.com/v3/api-keys/me \\ -H 'Authorization: Bearer <api_key>' \\ -H
+ * https://api.us-east-1.mbedcloud.com/v3/api-keys/me \\ -H 'Authorization: Bearer <access_key>' \\ -H
* 'content-type: application/json' \\ -d '{\"name\": \"TestApiKey25\"}'
* ```
*
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountApplicationsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountApplicationsApi.java
new file mode 100644
index 000000000..3827c10d7
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountApplicationsApi.java
@@ -0,0 +1,267 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AccessKey;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AccessKeyList;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.ApiKeyInfoResp;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.Application;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.ApplicationList;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.GroupIdList;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.GroupSummaryList;
+
+public interface AccountApplicationsApi {
+ /**
+ * Add application to a list of groups. Add application to groups. <b>Note:</b> This endpoint is
+ * restricted to administrators. **Example:** ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/v3/applications/{application_id}/groups/add \\ -H 'Authorization: Bearer
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d
+ * '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
+ * ```
+ *
+ * @param applicationId
+ * The ID of the application to add to the group. (required)
+ * @param body
+ * A list of IDs of the groups to update. (required)
+ * @return Call<Void>
+ */
+ @Headers({ "Content-Type:application/json" })
+ @POST("v3/applications/{application_id}/groups/add")
+ Call
+ addApplicationToGroups(@retrofit2.http.Path(value = "application_id", encoded = true) String applicationId,
+ @retrofit2.http.Body GroupIdList body);
+
+ /**
+ * Create a new application. Create a new application. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/applications
+ * -d '{\"name\": \"MyApplication1\"}' \\ -H 'Authorization: Bearer
+ * <access_key>' \\ -H 'content-type: application/json' ```
+ *
+ * @param body
+ * The details of the application to create. (required)
+ * @return Call<Application>
+ */
+ @Headers({ "Content-Type:application/json" })
+ @POST("v3/applications")
+ Call createApplication(@retrofit2.http.Body Application body);
+
+ /**
+ * Create a new applicationaccess key. Create a new access key for the application. <b>Note:</b> This
+ * endpoint is restricted to administrators. **Example:** ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/v3/applications/{application_id}/access-keys -d '{\"name\":
+ * \"MyKey1\"}' \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type:
+ * application/json' ```
+ *
+ * @param applicationId
+ * The ID of the application. (required)
+ * @param body
+ * The details of the access key to create. (required)
+ * @return Call<AccessKey>
+ */
+ @Headers({ "Content-Type:application/json" })
+ @POST("v3/applications/{application_id}/access-keys")
+ Call
+ createApplicationAccessKey(@retrofit2.http.Path(value = "application_id", encoded = true) String applicationId,
+ @retrofit2.http.Body AccessKey body);
+
+ /**
+ * Delete application. Delete the application. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X DELETE
+ * https://api.us-east-1.mbedcloud.com/v3/applications/{application_id} \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @param applicationId
+ * The ID of the application to delete. (required)
+ * @return Call<Void>
+ */
+ @DELETE("v3/applications/{application_id}")
+ Call deleteApplication(@retrofit2.http.Path(value = "application_id", encoded = true) String applicationId);
+
+ /**
+ * Delete access key associated with the application. Delete the access key associated with the application.
+ * <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X
+ * DELETE https://api.us-east-1.mbedcloud.com/v3/applications/{application_id}/access-keys/{access_key_id} \\ -H
+ * 'Authorization: Bearer <access_key>' ```
+ *
+ * @param applicationId
+ * The ID of the application. (required)
+ * @param accessKeyId
+ * The ID of the access key to delete. (required)
+ * @return Call<Void>
+ */
+ @DELETE("v3/applications/{application_id}/access-keys/{access_key_id}")
+ Call
+ deleteApplicationAccessKey(@retrofit2.http.Path(value = "application_id", encoded = true) String applicationId,
+ @retrofit2.http.Path(value = "access_key_id", encoded = true) String accessKeyId);
+
+ /**
+ * Get all access keys associated with the application. Retrieve an array of access keys associated with the
+ * application. <b>Note:</b> This endpoint is restricted to administrators. **Example:**
+ * ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/applications/{application_id}/access-keys
+ * \\ -H 'Authorization: Bearer <access_key>' ```
+ *
+ * @param applicationId
+ * The ID of the application. (required)
+ * @param limit
+ * The number of results to return (2-1000). Default 50. (optional, default to 50)
+ * @param after
+ * The entity ID to retrieve after the given one. (optional)
+ * @param order
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
+ * @param include
+ * Comma-separated additional data to return. Currently supported: total_count. (optional)
+ * @param statusEq
+ * Status filter. (optional)
+ * @return Call<AccessKeyList>
+ */
+ @GET("v3/applications/{application_id}/access-keys")
+ Call
+ getAllApplicationAccessKeys(@retrofit2.http.Path(value = "application_id", encoded = true) String applicationId,
+ @retrofit2.http.Query("limit") Integer limit,
+ @retrofit2.http.Query("after") String after,
+ @retrofit2.http.Query("order") String order,
+ @retrofit2.http.Query("include") String include,
+ @retrofit2.http.Query("status__eq") String statusEq);
+
+ /**
+ * Get all applications. Retrieve an array of applications. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/applications
+ * \\ -H 'Authorization: Bearer <access_key>' ```
+ *
+ * @param limit
+ * The number of results to return (2-1000). Default 50. (optional, default to 50)
+ * @param after
+ * The entity ID to retrieve after the given one. (optional)
+ * @param order
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
+ * @param include
+ * Comma-separated additional data to return. Currently supported: total_count. (optional)
+ * @param statusEq
+ * Status filter. (optional)
+ * @return Call<ApplicationList>
+ */
+ @GET("v3/applications")
+ Call
+ getAllApplications(@retrofit2.http.Query("limit") Integer limit, @retrofit2.http.Query("after") String after,
+ @retrofit2.http.Query("order") String order, @retrofit2.http.Query("include") String include,
+ @retrofit2.http.Query("status__eq") String statusEq);
+
+ /**
+ * Get application. Retrieve details of an application. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/applications/{application_id} \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @param applicationId
+ * The ID of the application to retrieve. (required)
+ * @return Call<Application>
+ */
+ @GET("v3/applications/{application_id}")
+ Call
+ getApplication(@retrofit2.http.Path(value = "application_id", encoded = true) String applicationId);
+
+ /**
+ * Get access key. Retrieve details of an access key associated with the application. <b>Note:</b> This
+ * endpoint is restricted to administrators. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/applications/{application_id}/access-keys/{access_key_id} \\ -H
+ * 'Authorization: Bearer <access_key>' ```
+ *
+ * @param applicationId
+ * The ID of the application. (required)
+ * @param accessKeyId
+ * The ID of the access key to retrieve. (required)
+ * @return Call<AccessKey>
+ */
+ @GET("v3/applications/{application_id}/access-keys/{access_key_id}")
+ Call
+ getApplicationAccessKey(@retrofit2.http.Path(value = "application_id", encoded = true) String applicationId,
+ @retrofit2.http.Path(value = "access_key_id", encoded = true) String accessKeyId);
+
+ /**
+ * Get policy groups of an application. Retrieve an array of policy groups associated with an application.
+ * <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X
+ * GET https://api.us-east-1.mbedcloud.com/v3/applications/{application_id}/groups \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @param applicationId
+ * The ID of the application. (required)
+ * @param limit
+ * The number of results to return (2-1000). Default 50. (optional, default to 50)
+ * @param after
+ * The entity ID to retrieve after the given one. (optional)
+ * @param order
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
+ * @param include
+ * Comma-separated additional data to return. Currently supported: total_count. (optional)
+ * @return Call<GroupSummaryList>
+ */
+ @GET("v3/applications/{application_id}/groups")
+ Call
+ getGroupsOfApplication(@retrofit2.http.Path(value = "application_id", encoded = true) String applicationId,
+ @retrofit2.http.Query("limit") Integer limit,
+ @retrofit2.http.Query("after") String after, @retrofit2.http.Query("order") String order,
+ @retrofit2.http.Query("include") String include);
+
+ /**
+ * Remove application from groups. Remove application from groups. <b>Note:</b> This endpoint is
+ * restricted to administrators. **Example:** ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/v3/applications/{application_id}/groups/remove \\ -H 'Authorization:
+ * Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d
+ * '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
+ * ```
+ *
+ * @param applicationId
+ * The ID of the application to remove from the group. (required)
+ * @param body
+ * A list of IDs of the groups to update. (required)
+ * @return Call<Void>
+ */
+ @Headers({ "Content-Type:application/json" })
+ @POST("v3/applications/{application_id}/groups/remove")
+ Call
+ removeApplicationFromGroups(@retrofit2.http.Path(value = "application_id", encoded = true) String applicationId,
+ @retrofit2.http.Body GroupIdList body);
+
+ /**
+ * Update applicationdetails. Update application details. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** `curl -X PUT
+ * https://api.us-east-1.mbedcloud.com/v3/applications/{application_id} \\ -H 'Authorization: Bearer
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\":
+ * \"TestApplication25\"}' ```
+ *
+ * @param applicationId
+ * The ID of the application to update. (required)
+ * @param body
+ * New applicationattributes to store. (required)
+ * @return Call<ApiKeyInfoResp>
+ */
+ @PUT("v3/applications/{application_id}")
+ Call
+ updateApplication(@retrofit2.http.Path(value = "application_id", encoded = true) String applicationId,
+ @retrofit2.http.Body Application body);
+
+ /**
+ * Update access key details. Update access key details. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** `curl -X PUT
+ * https://api.us-east-1.mbedcloud.com/v3/applications/{application_id}/access-keys/{access_key_id} \\ -H
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d
+ * '{\"name\": \"TestAccessKey\"}' ```
+ *
+ * @param applicationId
+ * The ID of the application. (required)
+ * @param accessKeyId
+ * The ID of the access key to update. (required)
+ * @param body
+ * New access key attributes to store. (required)
+ * @return Call<AccessKey>
+ */
+ @PUT("v3/applications/{application_id}/access-keys/{access_key_id}")
+ Call
+ updateApplicationAccessKey(@retrofit2.http.Path(value = "application_id", encoded = true) String applicationId,
+ @retrofit2.http.Path(value = "access_key_id", encoded = true) String accessKeyId,
+ @retrofit2.http.Body AccessKey body);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountEmailNotificationLogsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountEmailNotificationLogsApi.java
index 75e65b89c..dcdf3ad36 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountEmailNotificationLogsApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountEmailNotificationLogsApi.java
@@ -5,19 +5,19 @@
import retrofit2.Call;
import retrofit2.http.*;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.NotificationEntry;
import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.NotificationEntryList;
public interface AccountEmailNotificationLogsApi {
/**
- * Get notification events for an account. Retrieve notifications for an account.
+ * Get logs of email notifications. Retrieve an array of email notification logs.
*
* @param limit
* The number of results to return (2-1000). Default 50. (optional, default to 50)
* @param after
- * The entity ID to fetch after the given one. (optional)
+ * The entity ID to retrieve after the given one. (optional)
* @param order
- * Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. (optional, default to
- * ASC)
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
* @return Call<NotificationEntryList>
*/
@GET("v3/accounts/me/notifications")
@@ -25,4 +25,15 @@ Call getNofificationEntries(@retrofit2.http.Query("limit"
@retrofit2.http.Query("after") String after,
@retrofit2.http.Query("order") String order);
+ /**
+ * Get an email notification. Retrieve an email notification log entry.
+ *
+ * @param notificationId
+ * The ID of the log entry to be retrieved. (required)
+ * @return Call<NotificationEntry>
+ */
+ @GET("v3/accounts/me/notifications/{notification_id}")
+ Call
+ getNofificationEntry(@retrofit2.http.Path(value = "notification_id", encoded = true) String notificationId);
+
}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountEntitlementLimitationsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountEntitlementLimitationsApi.java
new file mode 100644
index 000000000..a215afc33
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountEntitlementLimitationsApi.java
@@ -0,0 +1,34 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AccountLimitation;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AccountLimitationList;
+
+public interface AccountEntitlementLimitationsApi {
+ /**
+ * Get an entitlement limitation. Retrieve an entitlement limitation.
+ *
+ * @param limitationId
+ * The ID of the limitation to be fetched. (required)
+ * @return Call<AccountLimitation>
+ */
+ @GET("v3/limitations/{limitation_id}")
+ Call
+ getAccountLimitation(@retrofit2.http.Path(value = "limitation_id", encoded = true) String limitationId);
+
+ /**
+ * Get entitlement limitations. Retrieve an array of entitlement limitations.
+ *
+ * @param inheritedEq
+ * Filter for finding account limitations by inheritance. True returns also inherited limitations. False
+ * returns only non-inherited ones. (optional)
+ * @return Call<AccountLimitationList>
+ */
+ @GET("v3/limitations")
+ Call getAccountLimitations(@retrofit2.http.Query("inherited__eq") String inheritedEq);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountIdentityProvidersApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountIdentityProvidersApi.java
index 2cf258270..984b40aef 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountIdentityProvidersApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountIdentityProvidersApi.java
@@ -13,7 +13,8 @@
public interface AccountIdentityProvidersApi {
/**
- * Create a new identity provider. Create a new identity provider.
+ * Create a new identity provider. Create a new identity provider. <b>Note:</b> This endpoint is
+ * restricted to administrators.
*
* @param body
* Details of the identity provider to create. (required)
@@ -29,7 +30,8 @@ Call createIdentityProvider(@retrofit2.http.Body IdentityP
@retrofit2.http.Query("discovery") Boolean discovery);
/**
- * Delete an identity provider by ID. Delete an identity provider by ID.
+ * Delete an identity provider by ID. Delete an identity provider by ID. <b>Note:</b> This endpoint is
+ * restricted to administrators.
*
* @param identityProviderId
* The ID of the identity provider to delete. (required)
@@ -40,7 +42,8 @@ Call deleteIdentityProvider(@retrofit2.http.Path(value = "identity_provide
encoded = true) String identityProviderId);
/**
- * Delete the service provider certificate. Delete a service provider certificate.
+ * Delete the service provider certificate. Delete a service provider certificate. <b>Note:</b> This
+ * endpoint is restricted to administrators.
*
* @param identityProviderId
* The ID of the identity provider. (required)
@@ -53,6 +56,7 @@ Call deleteSpCertificate(@retrofit2.http.Path(value = "ide
/**
* Generate a new service provider certificate. Generate a new service provider certificate.
+ * <b>Note:</b> This endpoint is restricted to administrators.
*
* @param identityProviderId
* The ID of the identity provider to generate a certificate for. (required)
@@ -68,15 +72,15 @@ Call generateSpCertificate(
@retrofit2.http.Body CertificateGenerationReq body);
/**
- * Get all identity providers. Retrieve identity providers in an array.
+ * Get all identity providers. Retrieve an array of identity providers. <b>Note:</b> This endpoint is
+ * restricted to administrators.
*
* @param limit
* The number of results to return (2-1000). Default 50. (optional, default to 50)
* @param after
- * The entity ID to fetch after the given one. (optional)
+ * The entity ID to retrieve after the given one. (optional)
* @param order
- * Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. (optional, default to
- * ASC)
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
* @param include
* Comma-separated additional data to return. Currently supported: total_count. (optional)
* @return Call<IdentityProviderList>
@@ -89,7 +93,8 @@ Call getAllIdentityProviders(@retrofit2.http.Query("limit"
@retrofit2.http.Query("include") String include);
/**
- * Get identity provider by ID. Retrieve by ID.
+ * Get identity provider. Retrieve an identity provider. <b>Note:</b> This endpoint is restricted to
+ * administrators.
*
* @param identityProviderId
* The ID of the identity provider to retrieve. (required)
@@ -100,7 +105,8 @@ Call getIdentityProvider(@retrofit2.http.Path(value = "ide
encoded = true) String identityProviderId);
/**
- * Refreshes the OIDC signing keys. Refreshes an OIDC IdP's signing keys.
+ * Refreshes the OIDC signing keys. Refreshes an OIDC IdP's signing keys. <b>Note:</b> This endpoint
+ * is restricted to administrators.
*
* @param identityProviderId
* The ID of the identity provider for which to refresh the signing keys. (required)
@@ -112,7 +118,8 @@ Call getIdentityProvider(@retrofit2.http.Path(value = "ide
refreshJwks(@retrofit2.http.Path(value = "identity_provider_id", encoded = true) String identityProviderId);
/**
- * Update an existing identity provider. Update an existing identity provider.
+ * Update an existing identity provider. Update an existing identity provider. <b>Note:</b> This
+ * endpoint is restricted to administrators.
*
* @param identityProviderId
* The ID of the identity provider to update. (required)
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountPolicyGroupsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountPolicyGroupsApi.java
index 55f85c47e..6b1d316bc 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountPolicyGroupsApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountPolicyGroupsApi.java
@@ -6,6 +6,7 @@
import retrofit2.http.*;
import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.ApiKeyInfoRespList;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.ApplicationList;
import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.GroupCreationInfo;
import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.GroupSummary;
import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.GroupSummaryList;
@@ -17,7 +18,9 @@ public interface AccountPolicyGroupsApi {
/**
* Add API keys to the group. Add API keys to the group. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/api-keys \\ -H 'Authorization: Bearer
- * <api_key>' ```
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"apikeys\" :
+ * [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }'
+ * ```
*
* @param groupId
* The ID of the group. (required)
@@ -31,8 +34,10 @@ Call addApiKeysToGroup(@retrofit2.http.Path(value = "group_id", en
/**
* Add API Keys to the group. Add API keys to the group. **Example:** ``` curl -X POST
- * https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/api-keys \\ -H 'Authorization: Bearer
- * <api_key>' ```
+ * https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/api-keys/add \\ -H 'Authorization: Bearer
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"apikeys\" :
+ * [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }'
+ * ```
*
* @param groupId
* The ID of the group. (required)
@@ -45,9 +50,31 @@ Call addListedApiKeysToGroup(@retrofit2.http.Path(value = "group_i
@retrofit2.http.Body SubjectList body);
/**
- * Add users to the group. Add users to the group. **Example:** ``` curl -X POST
+ * Add applications to the group. Add applications to the group. **Example:** ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/applications/remove \\ -H 'Authorization:
+ * Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{
+ * \"applications\":
+ * [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }'
+ * ```
+ *
+ * @param groupId
+ * The ID of the group. (required)
+ * @param body
+ * A list of applications to add to the group. (required)
+ * @return Call<GroupSummary>
+ */
+ @POST("v3/policy-groups/{group_id}/applications/add")
+ Call
+ addListedApplicationsToGroup(@retrofit2.http.Path(value = "group_id", encoded = true) String groupId,
+ @retrofit2.http.Body SubjectList body);
+
+ /**
+ * Add users to the group. Add users to the group. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/users/add \\ -H 'Authorization: Bearer
- * <api_key>' ```
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"users\":
+ * [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }'
+ * ```
*
* @param groupId
* The ID of the group. (required)
@@ -60,9 +87,10 @@ Call addListedUsersToGroup_(@retrofit2.http.Path(value = "group_id
@retrofit2.http.Body SubjectList body);
/**
- * Add members to a group. Add users and API keys to a group. **Example:** ``` curl -X POST
+ * Add members to a group. Add users and API keys to a group. <b>Note:</b> This endpoint is restricted
+ * to administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id} \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"users\":
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"users\":
* [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]}'
* ```
*
@@ -78,9 +106,12 @@ Call addSubjectsToGroup(@retrofit2.http.Path(value = "group_id", e
@retrofit2.http.Body SubjectList body);
/**
- * Add users to the group. Add users to the group. **Example:** ``` curl -X POST
+ * Add users to the group. Add users to the group. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/users \\ -H 'Authorization: Bearer
- * <api_key>' ```
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"users\":
+ * [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }'
+ * ```
*
* @param groupId
* The ID of the group. (required)
@@ -93,10 +124,10 @@ Call addUsersToGroup_(@retrofit2.http.Path(value = "group_id", enc
@retrofit2.http.Body SubjectList body);
/**
- * Create a new group. Create a new group. **Example:** ``` curl -X POST
- * https://api.us-east-1.mbedcloud.com/v3/policy-groups \\ -H 'Authorization: Bearer <api_key>' \\ -H
- * 'content-type: application/json' -d '{\"name\": \"MyGroup1\"}'
- * ```
+ * Create a new group. Create a new group. <b>Note:</b> This endpoint is restricted to administrators.
+ * **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/policy-groups \\ -H
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' -d
+ * '{\"name\": \"MyGroup1\"}' ```
*
* @param body
* Details of the group to create. (required)
@@ -107,9 +138,9 @@ Call addUsersToGroup_(@retrofit2.http.Path(value = "group_id", enc
Call createGroup(@retrofit2.http.Body GroupCreationInfo body);
/**
- * Delete a group. Delete a group. **Example:** ``` curl -X DELETE
- * https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id} \\ -H 'Authorization: Bearer
- * <api_key>' ```
+ * Delete a group. Delete a group. <b>Note:</b> This endpoint is restricted to administrators.
+ * **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id} \\
+ * -H 'Authorization: Bearer <access_key>' ```
*
* @param groupId
* The ID of the group to delete. (required)
@@ -119,17 +150,16 @@ Call addUsersToGroup_(@retrofit2.http.Path(value = "group_id", enc
Call deleteGroup(@retrofit2.http.Path(value = "group_id", encoded = true) String groupId);
/**
- * Get all group information. Retrieve all group information. **Example:** ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/policy-groups \\ -H 'Authorization: Bearer <api_key>'
+ * Get policy groups. Retrieve an array of policy groups. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/policy-groups \\ -H 'Authorization: Bearer <access_key>'
* ```
*
* @param limit
* The number of results to return (2-1000). Default 50. (optional, default to 50)
* @param after
- * The entity ID to fetch after the given one. (optional)
+ * The entity ID to retrieve after the given one. (optional)
* @param order
- * Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. (optional, default to
- * ASC)
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
* @param include
* Comma-separated additional data to return. Currently supported: total_count. (optional)
* @param nameEq
@@ -143,19 +173,18 @@ Call addUsersToGroup_(@retrofit2.http.Path(value = "group_id", enc
@retrofit2.http.Query("name__eq") String nameEq);
/**
- * Get the API keys of a group. Manage policy groups. **Example:** ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/api-keys \\ -H 'Authorization: Bearer
- * <api_key>' ```
+ * Get the API keys of a policy group. Retrieve an array of API keys associated with a policy group. **Example:**
+ * ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/api-keys \\ -H
+ * 'Authorization: Bearer <access_key>' ```
*
* @param groupId
* The ID of the group. (required)
* @param limit
* The number of results to return (2-1000). Default 50. (optional, default to 50)
* @param after
- * The entity ID to fetch after the given one. (optional)
+ * The entity ID to retrieve after the given one. (optional)
* @param order
- * Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. (optional, default to
- * ASC)
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
* @param include
* Comma-separated additional data to return. Currently supported: total_count. (optional)
* @return Call<ApiKeyInfoRespList>
@@ -167,31 +196,56 @@ Call addUsersToGroup_(@retrofit2.http.Path(value = "group_id", enc
@retrofit2.http.Query("order") String order, @retrofit2.http.Query("include") String include);
/**
- * Get group information. Retrieve general information about a group. **Example:** ``` curl -X GET
+ * Get the applications of a policy group. Retrieve an array of applications associated with a policy group.
+ * **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/applications \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @param groupId
+ * The ID of the group. (required)
+ * @param limit
+ * The number of results to return (2-1000). Default 50. (optional, default to 50)
+ * @param after
+ * The entity ID to retrieve after the given one. (optional)
+ * @param order
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
+ * @param include
+ * Comma-separated additional data to return. Currently supported: total_count. (optional)
+ * @return Call<ApplicationList>
+ */
+ @GET("v3/policy-groups/{group_id}/applications")
+ Call
+ getApplicationsOfGroup(@retrofit2.http.Path(value = "group_id", encoded = true) String groupId,
+ @retrofit2.http.Query("limit") Integer limit,
+ @retrofit2.http.Query("after") String after, @retrofit2.http.Query("order") String order,
+ @retrofit2.http.Query("include") String include);
+
+ /**
+ * Get a policy group. Retrieve a policy group. **Example:** ``` curl -X GET
* https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id} \\ -H 'Authorization: Bearer
- * <api_key>' ```
+ * <access_key>' ```
*
* @param groupId
- * The ID of the group to retrieve. (required)
+ * The ID of the policy group to retrieve. (required)
* @return Call<GroupSummary>
*/
@GET("v3/policy-groups/{group_id}")
Call getGroupSummary(@retrofit2.http.Path(value = "group_id", encoded = true) String groupId);
/**
- * Get users of a group. Retrieve users of a group with details. **Example:** ``` curl -X GET
+ * Get users of a policy group. Retrieve an array of users associated with a policy group. <b>Note:</b>
+ * This endpoint is restricted to administrators. **Example:** ``` curl -X GET
* https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/users \\ -H 'Authorization: Bearer
- * <api_key>' ```
+ * <access_key>' ```
*
* @param groupId
* The ID of the group. (required)
* @param limit
* The number of results to return (2-1000). Default 50. (optional, default to 50)
* @param after
- * The entity ID to fetch after the given one. (optional)
+ * The entity ID to retrieve after the given one. (optional)
* @param order
- * Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. (optional, default to
- * ASC)
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
* @param include
* Comma-separated additional data to return. Currently supported: total_count. (optional)
* @param statusEq
@@ -214,8 +268,8 @@ Call addUsersToGroup_(@retrofit2.http.Path(value = "group_id", enc
/**
* Remove API keys from a group. Remove API keys from groups. **Example:** ``` curl -X DELETE
* https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/api-keys \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d
- * '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"apikeys\":
+ * [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }'
* ```
*
* @param groupId
@@ -232,8 +286,8 @@ Call removeApiKeysFromGroup(@retrofit2.http.Path(value = "group_id
/**
* Remove API keys from a group. Remove API keys from groups. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/api-keys/remove \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d
- * '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"apikeys\" :
+ * [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }'
* ```
*
* @param groupId
@@ -249,10 +303,31 @@ Call removeApiKeysFromGroup(@retrofit2.http.Path(value = "group_id
@retrofit2.http.Body SubjectList body);
/**
- * Remove users from a group. Manage policy groups. **Example:** ``` curl -X POST
+ * Remove applications from a group. Remove applications from groups. **Example:** ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/applications/remove \\ -H 'Authorization:
+ * Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{
+ * \"applications\":
+ * [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }'
+ * ```
+ *
+ * @param groupId
+ * The ID of the group. (required)
+ * @param body
+ * A list of applications to remove from the group. (required)
+ * @return Call<GroupSummary>
+ */
+ @Headers({ "Content-Type:application/json" })
+ @POST("v3/policy-groups/{group_id}/applications/remove")
+ Call
+ removeListedApplicationsFromGroup(@retrofit2.http.Path(value = "group_id", encoded = true) String groupId,
+ @retrofit2.http.Body SubjectList body);
+
+ /**
+ * Remove users from a group. Remove users from a policy group. <b>Note:</b> This endpoint is restricted
+ * to administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/users/remove \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d
- * '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"users\":
+ * [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }'
* ```
*
* @param groupId
@@ -268,10 +343,11 @@ Call removeApiKeysFromGroup(@retrofit2.http.Path(value = "group_id
@retrofit2.http.Body SubjectList body);
/**
- * Remove users from a group. Manage policy groups. **Example:** ``` curl -X DELETE
+ * Remove users from a group. Manage policy groups. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X DELETE
* https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id}/users \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d
- * '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d '{ \"users\":
+ * [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"] }'
* ```
*
* @param groupId
@@ -286,9 +362,10 @@ Call removeUsersFromGroup(@retrofit2.http.Path(value = "group_id",
@retrofit2.http.Body SubjectList body);
/**
- * Update the group name. Update a group name. **Example:** ``` curl -X PUT
+ * Update the group name. Update a group name. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X PUT
* https://api.us-east-1.mbedcloud.com/v3/policy-groups/{group_id} \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\":
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\":
* \"TestGroup2\"}' ```
*
* @param groupId
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountProfileApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountProfileApi.java
index ae7d54902..31b0741a7 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountProfileApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountProfileApi.java
@@ -10,9 +10,9 @@
public interface AccountProfileApi {
/**
- * Get account info. Retrieve detailed information about the account. **Example:** ``` curl -X GET
+ * Get account information. Retrieve information about the account. **Example:** ``` curl -X GET
* https://api.us-east-1.mbedcloud.com/v3/accounts/me?include=policies \\ -H 'Authorization: Bearer
- * <api_key>' ```
+ * <access_key>' ```
*
* @param include
* Comma-separated additional data to return. Currently supported: limits, policies, sub_accounts.
@@ -26,10 +26,10 @@ Call getMyAccountInfo(@retrofit2.http.Query("include") String inclu
@retrofit2.http.Query("properties") String properties);
/**
- * Updates attributes of the account. Update the account. **Example:** ``` curl -X PUT
- * https://api.us-east-1.mbedcloud.com/v3/accounts/me \\ -H 'Authorization: Bearer <api_key>' \\ -H
- * 'content-type: application/json' \\ -d '{\"phone_number\": \"12345678\"}'
- * ```
+ * Updates attributes of the account. Update the account. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/accounts/me \\
+ * -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d
+ * '{\"phone_number\": \"12345678\"}' ```
*
* @param body
* Details of the account to update. (required)
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountUserInvitationsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountUserInvitationsApi.java
index d2c45deb9..a29bd88c2 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountUserInvitationsApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountUserInvitationsApi.java
@@ -11,9 +11,10 @@
public interface AccountUserInvitationsApi {
/**
- * Create a user invitation. Invite a new or existing user. **Example:** ``` curl -X POST
- * https://api.us-east-1.mbedcloud.com/v3/user-invitations \\ -H 'Authorization: Bearer <api_key>' \\
- * -H 'content-type: application/json' \\ -d {\"email\": \"myemail@company.com\"}
+ * Create a user invitation. Invite a new or existing user. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/v3/user-invitations \\ -H 'Authorization: Bearer <access_key>'
+ * \\ -H 'content-type: application/json' \\ -d {\"email\": \"myemail@company.com\"}
* ```
*
* @param body
@@ -25,9 +26,10 @@ public interface AccountUserInvitationsApi {
Call createInvitation(@retrofit2.http.Body UserInvitationReq body);
/**
- * Delete a user invitation. Delete an active user invitation sent to a new or existing user. **Example:**
- * ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/user-invitations/{invitation_id} \\ -H
- * 'Authorization: Bearer <api_key>' ```
+ * Delete a user invitation. Delete an active user invitation sent to a new or existing user.
+ * <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X
+ * DELETE https://api.us-east-1.mbedcloud.com/v3/user-invitations/{invitation_id} \\ -H 'Authorization: Bearer
+ * <access_key>' ```
*
* @param invitationId
* The ID of the invitation to delete. (required)
@@ -37,17 +39,17 @@ public interface AccountUserInvitationsApi {
Call deleteInvitation(@retrofit2.http.Path(value = "invitation_id", encoded = true) String invitationId);
/**
- * Get the details of all user invitations. Retrieve details for all the active user invitations. **Example:**
- * ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/user-invitations \\ -H 'Authorization:
- * Bearer <api_key>' ```
+ * Get user invitations. Retrieve an array of active user invitations sent by email. <b>Note:</b> This
+ * endpoint is restricted to administrators. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/user-invitations \\ -H 'Authorization: Bearer <access_key>'
+ * ```
*
* @param limit
* The number of results to return (2-1000). Default 50. (optional, default to 50)
* @param after
- * The entity ID to fetch after the given one. (optional)
+ * The entity ID to retrieve after the given one. (optional)
* @param order
- * Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. (optional, default to
- * ASC)
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
* @param loginProfilesEq
* Filter to retrieve user invitations by a specified login profile. (optional)
* @return Call<UserInvitationRespList>
@@ -59,9 +61,10 @@ Call getAllInvitations(@retrofit2.http.Query("limit") In
@retrofit2.http.Query("login_profiles__eq") String loginProfilesEq);
/**
- * Details of a user invitation. Retrieve the details of an active user invitation. **Example:** ```
- * curl -X GET https://api.us-east-1.mbedcloud.com/v3/user-invitations/{invitation_id} \\ -H 'Authorization:
- * Bearer <api_key>' ```
+ * Details of a user invitation. Retrieve the details of an active user invitation. <b>Note:</b> This
+ * endpoint is restricted to administrators. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/user-invitations/{invitation_id} \\ -H 'Authorization: Bearer
+ * <access_key>' ```
*
* @param invitationId
* The ID of the invitation to retrieve. (required)
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountUsersApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountUsersApi.java
index cbaeff42e..2a95b2ab5 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountUsersApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/AccountUsersApi.java
@@ -16,9 +16,10 @@
public interface AccountUsersApi {
/**
- * Add user to a list of groups. Add user to groups. **Example:** ``` curl -X POST
+ * Add user to a list of groups. Add user to groups. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/users/{user_id}/groups \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d
* '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
* ```
*
@@ -34,9 +35,10 @@ Call addUserToGroups(@retrofit2.http.Path(value = "user_id", encod
@retrofit2.http.Body List body);
/**
- * Add user to a list of groups. Add user to groups. **Example:** ``` curl -X POST
+ * Add user to a list of groups. Add user to groups. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/users/{user_id}/groups/add \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d
* '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
* ```
*
@@ -52,10 +54,11 @@ Call addUserToListedGroups(@retrofit2.http.Path(value = "user_id",
@retrofit2.http.Body GroupIdList body);
/**
- * Create a new user. Create or invite a new user to the account. Only email address is used; other attributes are
- * set in the second step. **Example:** ``` curl -X POST
+ * Create a new user. Create or invite a new user to the account. The invited user has to accept the invitation by
+ * clicking the link in the invitation email. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/users?action=invite \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d {\"email\":
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d {\"email\":
* \"myemail@company.com\"} ```
*
* @param body
@@ -69,9 +72,9 @@ Call addUserToListedGroups(@retrofit2.http.Path(value = "user_id",
Call createUser(@retrofit2.http.Body UserInfoReq body, @retrofit2.http.Query("action") String action);
/**
- * Delete a user. Delete a user. **Example:** ``` curl -X DELETE
- * https://api.us-east-1.mbedcloud.com/v3/users/{user_id} \\ -H 'Authorization: Bearer <api_key>'
- * ```
+ * Delete a user. Delete a user. <b>Note:</b> This endpoint is restricted to administrators.
+ * **Example:** ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v3/users/{user_id} \\ -H
+ * 'Authorization: Bearer <access_key>' ```
*
* @param userId
* The ID of the user to delete. (required)
@@ -81,17 +84,16 @@ Call addUserToListedGroups(@retrofit2.http.Path(value = "user_id",
Call deleteUser(@retrofit2.http.Path(value = "user_id", encoded = true) String userId);
/**
- * Get the details of all users. Retrieve the details of all users. **Example:** ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/users \\ -H 'Authorization: Bearer <api_key>'
- * ```
+ * Get users. Retrieve an array of users. <b>Note:</b> This endpoint is restricted to administrators.
+ * **Example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/users \\ -H
+ * 'Authorization: Bearer <access_key>' ```
*
* @param limit
* The number of results to return (2-1000). Default 50. (optional, default to 50)
* @param after
- * The entity ID to fetch after the given one. (optional)
+ * The entity ID to retrieve after the given one. (optional)
* @param order
- * Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. (optional, default to
- * ASC)
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
* @param include
* Comma-separated additional data to return. Currently supported: total_count. (optional)
* @param emailEq
@@ -117,19 +119,19 @@ Call addUserToListedGroups(@retrofit2.http.Path(value = "user_id",
@retrofit2.http.Query("login_profiles__eq") String loginProfilesEq);
/**
- * Get groups of the user. Retrieve groups of the user. **Example:** ``` curl -X GET
+ * Get policy groups for a user. Retrieve an array of policy groups associated with a user. <b>Note:</b>
+ * This endpoint is restricted to administrators. **Example:** ``` curl -X GET
* https://api.us-east-1.mbedcloud.com/v3/users/{user_id}/groups \\ -H 'Authorization: Bearer
- * <api_key>' ```
+ * <access_key>' ```
*
* @param userId
* The ID of the user. (required)
* @param limit
* The number of results to return (2-1000). Default 50. (optional, default to 50)
* @param after
- * The entity ID to fetch after the given one. (optional)
+ * The entity ID to retrieve after the given one. (optional)
* @param order
- * Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. (optional, default to
- * ASC)
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
* @param include
* Comma-separated additional data to return. Currently supported: total_count. (optional)
* @return Call<GroupSummaryList>
@@ -141,25 +143,9 @@ Call addUserToListedGroups(@retrofit2.http.Path(value = "user_id",
@retrofit2.http.Query("order") String order, @retrofit2.http.Query("include") String include);
/**
- * Details of the current user. Retrieve the details of the logged-in user.
- *
- * @param scratchCodes
- * Request to regenerate new emergency scratch codes. (optional)
- * @param properties
- * Request to return account-specific user property values according to the given property name.
- * (optional)
- * @param include
- * Comma-separated additional data to return. Currently supported: active_sessions. (optional)
- * @return Call<UserInfoResp>
- */
- @GET("v3/users/me")
- Call getMyUser(@retrofit2.http.Query("scratch_codes") String scratchCodes,
- @retrofit2.http.Query("properties") String properties,
- @retrofit2.http.Query("include") String include);
-
- /**
- * Details of a user. Retrieve the details of a user. **Example:** ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/users/{user_id} \\ -H 'Authorization: Bearer <api_key>'
+ * Details of a user. Retrieve the details of a user. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/users/{user_id} \\ -H 'Authorization: Bearer <access_key>'
* ```
*
* @param userId
@@ -170,9 +156,23 @@ Call getMyUser(@retrofit2.http.Query("scratch_codes") String scrat
Call getUser(@retrofit2.http.Path(value = "user_id", encoded = true) String userId);
/**
- * Remove user from groups. Remove user from groups. **Example:** ``` curl -X DELETE
+ * Remove user from the account. Remove user from the account. <b>Note:</b> This endpoint is restricted
+ * to administrators. **Example:** ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/v3/users/{user_id}/remove \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @param userId
+ * The ID of the user to remove from the account. (required)
+ * @return Call<Void>
+ */
+ @POST("v3/users/{user_id}/remove")
+ Call removeUserFromAccount(@retrofit2.http.Path(value = "user_id", encoded = true) String userId);
+
+ /**
+ * Remove user from groups. Remove user from groups. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X DELETE
* https://api.us-east-1.mbedcloud.com/v3/users/{user_id}/groups \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d
* '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
* ```
*
@@ -188,9 +188,10 @@ Call removeUserFromGroups(@retrofit2.http.Path(value = "user_id",
@retrofit2.http.Body List body);
/**
- * Remove user from groups. Remove user from groups. **Example:** ``` curl -X POST
+ * Remove user from groups. Remove user from groups. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/users/{user_id}/groups/remove \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d
* '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
* ```
*
@@ -206,24 +207,10 @@ Call removeUserFromListedGroups(@retrofit2.http.Path(value = "user
@retrofit2.http.Body GroupIdList body);
/**
- * Update user details. Update user details. **Example:** ``` curl -X PUT
- * https://api.us-east-1.mbedcloud.com/v3/users/me \\ -H 'Authorization: Bearer <token>' \\ -H
- * 'content-type: application/json' \\ -d '{\"full_name\": \"fullname\"}'
- * ```
- *
- * @param body
- * A user object with attributes. (required)
- * @return Call<UserInfoResp>
- */
- @Headers({ "Content-Type:application/json" })
- @PUT("v3/users/me")
- Call updateMyUser(@retrofit2.http.Body UserUpdateReq body);
-
- /**
- * Update user details. Update user details **Example:** ``` curl -X PUT
- * https://api.us-east-1.mbedcloud.com/v3/users/{user_id} \\ -H 'Authorization: Bearer <api_key>' \\
- * -H 'content-type: application/json' \\ -d '{\"username\": \"myusername\"}'
- * ```
+ * Update user details. Update user details. <b>Note:</b> This endpoint is restricted to administrators.
+ * **Example:** ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v3/users/{user_id} \\ -H
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d
+ * '{\"username\": \"myusername\"}' ```
*
* @param userId
* The ID of the user. (required)
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDataNotificationsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDataNotificationsApi.java
new file mode 100644
index 000000000..633c4f9c8
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDataNotificationsApi.java
@@ -0,0 +1,243 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.ChannelMetadata;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.NotificationMessage;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.RegisterWebsocketChannel;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.Webhook;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.WebsocketChannel;
+
+public interface DeviceDataNotificationsApi {
+ /**
+ * Open the websocket. A websocket channel can have only one active connection at a time. If a websocket connection
+ * for a channel exists and a new connection to the same channel is made, the connection is accepted and the older
+ * connection is closed. A websocket client library should be used when connecting to this endpoint. Once the socket
+ * has been opened, the server may close it with one of the following status codes. <table> <thead>
+ * <tr> <th>Code</th> <th>Description</th> </tr> </thead> <tbody>
+ * <tr> <td><b>1000</b></td> <td>Socket closed normally by the client, or by the
+ * server when the channel is deleted with a REST call.</td> </tr> <tr>
+ * <td><b>1001</b></td> <td>Going away. Set when another socket opens on the used
+ * channel.</td> </tr> <tr> <td><b>1006</b></td> <td>Abnormal
+ * closure. The client should reconnect after receiving this status code. A short reconnect delay is
+ * recommended.</td> </tr> <tr> <td><b>1008</b></td> <td>Policy
+ * violation. Set if the access key is lost or invalidated after a successful WebSocket handshake.</td>
+ * </tr> <tr> <td><b>1011</b></td> <td>Unexpected condition. The socket is
+ * closed with this status in an attempt to open a socket to a nonexistent channel (without a prior PUT request).
+ * This code is also used to indicate a closing socket for any other unexpected condition in the server.</td>
+ * </tr> <tr> <td><b>1012</b></td> <td>Service restart. Set when the
+ * server restarts for update, maintenance, and so on. The client should reconnect after receiving this status code.
+ * A short reconnect delay is recommended.</td> </tr> </tbody> </table> **Expected client
+ * behaviour:** If the connection is closed with code 1006 or 1012, the client should try to reconnect to maintain
+ * the notification flow. The client might disconnect several times in a relatively short period, for example,
+ * during service updates. This is normal. The desired client behavior is to reconnect after each disconnect.
+ * **Example:** The example is meant only for testing. For production devices, use a WebSocket client library.
+ * Websocat (https://github.com/vi/websocat) is a command-line client for WebSockets, like netcat or cURL. The
+ * example command opens a new WebSocket, waits for any data sent to the socket from the server, and prints it to
+ * `stdout`. ``` websocat
+ * wss://api.us-east-1.mbedcloud.com/v2/notification/websocket-connect \\ -H
+ * \"Sec-WebSocket-Protocol:wss,pelion_ak_<access_key>\" ```
+ *
+ * @param connection
+ * (required)
+ * @param upgrade
+ * (required)
+ * @param origin
+ * Originating host of the request. (required)
+ * @param secWebSocketVersion
+ * WebSocket version. Must be 13. (required)
+ * @param secWebSocketKey
+ * The value of this header field must be a nonce consisting of a randomly selected 16-byte value that
+ * has been base64-encoded (see Section 4 of [RFC4648]). The nonce must be selected randomly for each
+ * connection. (required)
+ * @param secWebSocketProtocol
+ * Access key or user token must be present in the `Sec-WebSocket-Protocol` header **if
+ * Authorization header cannot be provided**:
+ * `Sec-WebSocket-Protocol:\"wss,pelion_ak_{access_key}\"`. Refer to the notification
+ * service documentation for examples. (optional)
+ * @return Call<Void>
+ */
+ @GET("v2/notification/websocket-connect")
+ Call connectWebsocket(@retrofit2.http.Header("Connection") String connection,
+ @retrofit2.http.Header("Upgrade") String upgrade,
+ @retrofit2.http.Header("Origin") String origin,
+ @retrofit2.http.Header("Sec-WebSocket-Version") Integer secWebSocketVersion,
+ @retrofit2.http.Header("Sec-WebSocket-Key") String secWebSocketKey,
+ @retrofit2.http.Header("Sec-WebSocket-Protocol") String secWebSocketProtocol);
+
+ /**
+ * Delete notification Long Poll channel. Delete a notification Long Poll channel. This is required to change the
+ * channel from Long Poll to another type. Do not make a GET `/v2/notification/pull` call for two minutes
+ * after deleting the channel, because it can implicitly recreate the pull channel. You can also have some random
+ * responses with payload or 410 GONE with \"CHANNEL_DELETED\" as a payload or 200/204 until the old
+ * channel is purged. **Example:** ``` curl -X DELETE
+ * https://api.us-east-1.mbedcloud.com/v2/notification/pull \\ -H 'Authorization: Bearer <access_key>'
+ * ```
+ *
+ * @return Call<Void>
+ */
+ @DELETE("v2/notification/pull")
+ Call deleteLongPollChannel();
+
+ /**
+ * Delete websocket channel. Delete a notification websocket channel bound to the application. This is required to
+ * change the channel from websocket to another type. Deleting the websocket channel also removes the channel's
+ * notification queue. Any unsent notifications are lost when the channel is deleted. **Example:**
+ * ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v2/notification/websocket \\ -H
+ * 'Authorization: Bearer <access_key>' ```
+ *
+ * @return Call<Void>
+ */
+ @DELETE("v2/notification/websocket")
+ Call deleteWebsocket();
+
+ /**
+ * Delete callback URL. Deletes the callback URL. Deleting the callback URL also removes the channel's
+ * notification queue. Any unsent notifications are lost when the channel is deleted. **Example:**
+ * ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v2/notification/callback \\ -H
+ * 'Authorization: Bearer <access_key>' ```
+ *
+ * @return Call<Void>
+ */
+ @DELETE("v2/notification/callback")
+ Call deregisterWebhook();
+
+ /**
+ * Get channel metadata. Get channel delivery mechanism. **Example:** curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v2/notification/channel \\ -H 'Authorization: Bearer
+ * <access_key>'
+ *
+ * @return Call<ChannelMetadata>
+ */
+ @GET("v2/notification/channel")
+ Call getChannelMetadata();
+
+ /**
+ * Check callback URL. Shows the current callback URL if it exists. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v2/notification/callback \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @return Call<Webhook>
+ */
+ @GET("v2/notification/callback")
+ Call getWebhook();
+
+ /**
+ * Get websocket channel information. Returns 200 with websocket connection status, if websocket channel exists.
+ * **Note**: The current version does not yet have the capability to determine the channel status and will always
+ * return status 'unknown' and queue size '-1'. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v2/notification/websocket \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @return Call<WebsocketChannel>
+ */
+ @GET("v2/notification/websocket")
+ Call getWebsocket();
+
+ /**
+ * Get notifications using Long Poll In this case, notifications are delivered through HTTP long poll requests. The
+ * HTTP request is kept open until one or more event notifications are delivered to the client, or the request times
+ * out (response code 204). In both cases, the client should open a new polling connection after the previous one
+ * closes. Only a single long polling connection per application can be ongoing at any given time. We recommend
+ * using a persistent connection (Connection keep-alive header in the request) to avoid excess TLS handshakes. The
+ * pull channel is implicitly created by the first GET call to `/v2/notification/pull`. It refreshes on
+ * each GET call. If the channel is not polled for a long time (10 minutes), it expires and is deleted. This means
+ * that no notifications will stay in the queue between polls. A channel can be also be deleted explicitly with a
+ * DELETE call. **Note:** If you cannot have a public-facing callback URL, for example, when developing on your
+ * local machine, you can use long polling to check for new messages. However, **long polling is deprecated** and
+ * will likely be replaced in the future. It is meant only for experimentation, not commercial use. The proper
+ * method to receive notifications is a **notification callback**. There can only be one notification channel per
+ * application in Device Management Connect. If a notification channel of other type already exists for the
+ * application, delete it before creating a long poll notification channel. **Example:** ``` curl -X
+ * GET https://api.us-east-1.mbedcloud.com/v2/notification/pull \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @return Call<NotificationMessage>
+ */
+ @GET("v2/notification/pull")
+ Call longPollNotifications();
+
+ /**
+ * Register a callback URL. Register a URL to which the server delivers notifications of changes to the subscribed
+ * resource. To push notifications, you must first place subscriptions. The maximum length of the URL, header keys,
+ * and values, all combined, is 400 characters. Notifications are delivered as PUT requests to the HTTP server,
+ * which the client defines with a subscription server message. The given URL must be accessible, and respond to the
+ * PUT request with a response code of 200 or 204. Device Management Connect tests the callback URL with an empty
+ * JSON payload `{}` when the URL is registered. Callback implementation does not support URL redirection.
+ * For more information on notification messages, see [NotificationMessage](#NotificationMessage). **Optional
+ * headers in a callback message:** You can set optional headers to a callback in a **Webhook** object. Device
+ * Management Connect includes the header and key pairs in the notification messages send them to callback URL. The
+ * callback URLs and headers are application-specific. One possible use for additional headers is checking the
+ * origin of a PUT request, as well as distinguishing the application to which the notification belongs. **Note**:
+ * Only one callback URL for each application can be active. If you register a new URL while another one is active,
+ * it replaces the active one. There can be only one notification channel at a time for each application. If another
+ * type of channel is already present, you need to delete it before setting the callback URL. **Expiration of a
+ * callback URL:** A callback can expire when Device Management cannot deliver a notification due to a connection
+ * timeout or error response (4xx or 5xx). After each delivery failure, Device Management sets an exponential
+ * back-off time and makes a retry attempt after that. The first retry delay is 1 second, then 2s, 4s, 8s, up to a
+ * maximum delay of two minutes. The retry delay is applied when the response is received, or in case of timeout,
+ * after the timeout expires. The request timeout is 20 seconds; in the case of timeout, the first retry happens 20
+ * + 1 seconds after the first delivery attempt, then 20 + 2 seconds, and so on. The callback URL is removed if all
+ * retries fail within 24 hours. More about [notification sending
+ * logic](https://developer.pelion.com/docs/device-management/current/integrate-web-app/event-notification.html#notification-sending-logic)
+ * in the Device Management documentation. **Supported callback URL protocols:** Currently, only HTTP and HTTPS
+ * protocols are supported. **HTTPS callback URLs:** When delivering a notification to an HTTPS-based callback URL,
+ * Device Management Connect identifies itself with a valid client certificate. The certificate is signed by a
+ * trusted certificate authority (GlobalSign), with a Common Name (CN) set to
+ * `notifications.mbedcloud.com`. **Configuration options:** The event notification channel provides
+ * configurations options defined in [Serialization config](#SerializationConfigObjectV2). **Example:** This example
+ * command shows how to set your callback URL. It also sets an optional header authorization. When Device Management
+ * Connect calls your callback URL, the call contains the authorization header with the defined value.
+ * ``` curl -X PUT https://api.us-east-1.mbedcloud.com/v2/notification/callback \\ -H
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{
+ * \"url\": \"{callback-url}\", \"headers\": {\"authorization\":
+ * \"f4b93d6e-4652-4874-82e4-41a3ced0cd56\"}, \"serialization\": {\"type\":
+ * \"v2\", \"max_chunk_size\": \"100\", \"cfg\":
+ * {\"deregistrations_as_object\": \"true\", \"include_uid\": \"true\",
+ * \"include_timestamp\": \"true\", \"include_original_ep\": \"true\" } }
+ * }' ```
+ *
+ * @param webhook
+ * A JSON object that contains the optional headers and URL where notifications are sent. (required)
+ * @return Call<Void>
+ */
+ @Headers({ "Content-Type:application/json" })
+ @PUT("v2/notification/callback")
+ Call registerWebhook(@retrofit2.http.Body Webhook webhook);
+
+ /**
+ * Register a websocket channel. Register (or update) a channel using websocket connection to deliver notifications.
+ * The websocket channel should be opened by client using `/v2/notification/websocket-connect` endpoint.
+ * To get notifications pushed, you must place subscriptions. For more information on notification messages, see
+ * [NotificationMessage](#NotificationMessage). A websocket channel can have only one active websocket connection at
+ * a time. If a websocket connection for a channel exists and a new connection to the same channel is made, the
+ * connection is accepted and the older connection is closed. **Note**: Only one websocket channel for each
+ * application can be active at a time. If you register a new websocket channel while another one is active, it
+ * replaces the previously active one. If another type of channel is already present, you need to delete it before
+ * registering a websocket channel. **Note**: The current version does not yet have the capability to determine the
+ * channel status and will always return status 'unknown' and queue size '-1'. **Expiration of a
+ * websocket:** A websocket channel is expired if the channel does not have an opened websocket connection for a
+ * 24-hour period. Channel expiration means the channel is deleted and any undelivered notifications stored in its
+ * internal queue is removed. As long as the channel has an opened websocket connection or time between successive
+ * websocket connections is less than 24 hours, the channel is considered active, notifications are stored in its
+ * internal queue and delivered when a websocket connection is active. A channel can be also deleted explicitly with
+ * a DELETE call. More about [notification sending
+ * logic](https://developer.pelion.com/docs/device-management/current/integrate-web-app/event-notification.html#notification-sending-logic).
+ * **Configuration options:** The event notification channel provides configurations options defined in
+ * [Serialization config](#SerializationConfigObjectV2) **Example:** ``` curl -X PUT
+ * https://api.us-east-1.mbedcloud.com/v2/notification/websocket \\ -H 'Authorization: Bearer
+ * <access_key>' \\ -d '{ \"serialization\": {\"type\": \"v2\",
+ * \"max_chunk_size\": \"100\", \"cfg\": {\"deregistrations_as_object\":
+ * \"true\", \"include_uid\": \"true\", \"include_timestamp\":
+ * \"true\", \"include_original_ep\": \"true\" } } } ```
+ *
+ * @return Call<RegisterWebsocketChannel>
+ */
+ @Headers({ "Content-Type:application/json" })
+ @PUT("v2/notification/websocket")
+ Call registerWebsocket();
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDataRequestsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDataRequestsApi.java
new file mode 100644
index 000000000..96366433d
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDataRequestsApi.java
@@ -0,0 +1,98 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.DeviceRequest;
+
+public interface DeviceDataRequestsApi {
+ /**
+ * Send an asynchronous request to read, write or post to a device resource. This API provides an interface to call
+ * CoAP (Constrained Application Protocol) methods on a device and send commands to device resources. As part of the
+ * request body, you must specify the CoAP method you want to call on the device: - Use the GET method to read
+ * resource values. For example, to read the value of resource `/3200/0/5501`, use: ```
+ * curl -X POST https://api.us-east-1.mbedcloud.com/v2/device-requests/{device_id}?async-id={async-response-id}
+ * \\ -H 'Authorization: Bearer {access_key}' \\ -H 'content-type: application/json' \\ -d
+ * '{\"method\": \"GET\", \"uri\": \"/3200/0/5501\"}'
+ * ``` > For `GET` methods, the API may fetch values from an internal cache, instead of
+ * contacting the device. > If the value is not in the cache, the read command goes all the way to the device. -
+ * Use the PUT method to write [notification
+ * rules](https://developer.pelion.com/docs/device-management/current/resources/resource-change-webapp.html) or
+ * resource values for a resource. Example payload to write a notification rule: ``` {
+ * \"method\": \"PUT\", \"uri\":
+ * \"/5/0/1?lt=10>=60&pmax=120\" } ``` - Example payload to write
+ * a value to resource `/5/0/1`: ``` { \"method\": \"PUT\",
+ * \"uri\": \"/5/0/1?k1=v1&k2=v2\", \"accept\":
+ * \"text/plain\", \"content-type\": \"text/plain\", \"payload-b64\":
+ * \"dmFsdWUxCg==\" } ``` - Use the POST method to execute or create a resource
+ * on a LWM2M supporting device. When you create a resource, `uri` must refer to an object, and
+ * `payload-b64` must be in LWM2M TLV format for example: ``` { \"method\":
+ * \"POST\", \"uri\": \"/123\", \"content-type\":
+ * \"application/vnd.oma.lwm2m+tlv\", \"payload-b64\": \"BwHFAnZhbHVl\" }
+ * ``` - Use the POST method to execute resource on a LWM2M supporting device. Example payload to
+ * execute LWM2M resource `/123/1/1`: ``` { \"method\": \"POST\",
+ * \"uri\": \"/123/1/1\" } ``` - Device Management sends responses through the
+ * currently configured notification channel as `AsyncIDResponse`. Example `AsyncIDResponse`
+ * delivered through the notification channel: ``` { \"async-responses\": [ {
+ * \"id\": \"123e4567-e89b-12d3-a456-426655440000\", \"status\": 200,
+ * \"payload\": \"dmFsdWUxCg==\", \"ct\": \"text/plain\",
+ * \"max-age\": 600 } ] } ``` ``` { \"async-responses\": [ {
+ * \"id\": \"123e4567-e89b-12d3-a456-426655440000\", \"status\": 504,
+ * \"error\": \"TIMEOUT\" } ] } ``` > If it cannot reach the device at the
+ * time of the request, Device Management puts the requests in a queue. **Queueing behavior** If Device Management
+ * does not reach the device, or the device fails to respond, the server queues the request and retries the
+ * delivery, for the period of time defined by `expiry-seconds`, the next time the device contacts the
+ * server. The queue is limited to 20 requests per device. If the queue is full, subsequent messages will be
+ * rejected until some of the existing messages are delivered or expired. Device Management delivers requests from
+ * the queue in the order of insertion, one at a time, and not concurrently. Delivery attempts follow
+ * protocol-specific retransmission logic. There can be multiple transmissions, depending on the protocol. For CoAP,
+ * the retransmissions have an exponential backoff of 2, 4, 8, 16, and up to 64 seconds, taking in total over two
+ * minutes. If the device does not respond within this two-minute period, the delivery fails, Device Management
+ * performs one retry and then puts the request back into the queue until the retry count reaches its limit. Device
+ * Management attempts to redeliver the request when the device next contacts the server. When Device Management
+ * reaches the `retry` or `expiry-seconds` limit, the server discards the request and sends an
+ * error in `AsyncIDResponse`. For example: - Retries could be exhausted if the device periodically
+ * contacts the server and receives the request from the queue, but then fails to respond to the server. - The
+ * device may lose its network connectivity, and the requests in the queue may expire and get discarded before the
+ * device regains connectivity. When Device Management delivers the request to the device, the status code in
+ * `AsyncIDResponse` is *2xx* or *4xx*, based on the device's response. If Device Management could not
+ * deliver the request, the server generates a status code of *429* or *5xx*.
+ *
+ * @param deviceId
+ * The device ID generated by Device Management. (required)
+ * @param asyncId
+ * A client-generated ID that lets the REST client track the end-to-end flow and prevents race conditions
+ * with the notification channel. The `async-id` can be, for example, a UUID or the web
+ * application session ID along with the device ID and the resource. (required)
+ * @param body
+ * Device request to send. The body element has `method`, `uri`, `accept`,
+ * `content-type` and `payload-b64` fields. - The `method` is one of
+ * `GET`, `PUT`, `POST`, `DELETE`. - The `uri` field is
+ * the path to the LwM2M object and can include query parameters. This can include key-value pairs, for
+ * example, `/5/0/1?key1=value1;key2=value2`. - The `accept` field defines
+ * the content type that the requesting client will accept. - The `content-type` describes the
+ * content type of the base-64 encoded `payload-b64` field. - The `payload-b64` is
+ * the payload to send to the device in base-64 encoded form. (required)
+ * @param retry
+ * The number of attempts to deliver the request to the device after the first delivery attempt. For
+ * example, two retries sums up to the total of three delivery attempts. When retries are exhausted,
+ * Device Management discards the request and delivers an error in the AsyncIDResponse. The default
+ * number of retries for a non-queue mode device is `0`. The default number of retries for a
+ * queue-mode device is `2`. (optional)
+ * @param expirySeconds
+ * The time period during which the delivery is attempted, in seconds. If the device is not reachable
+ * within this period, Device Management discards the request and delivers an error in the
+ * AsyncIDResponse. The default time period during which the delivery is attempted is two hours for a
+ * non-queue mode device and three days for a queue-mode device. (optional)
+ * @return Call<Void>
+ */
+ @Headers({ "Content-Type:application/json" })
+ @POST("v2/device-requests/{device-id}")
+ Call createAsyncRequest(@retrofit2.http.Path(value = "device-id", encoded = true) String deviceId,
+ @retrofit2.http.Query("async-id") String asyncId,
+ @retrofit2.http.Body DeviceRequest body, @retrofit2.http.Query("retry") Integer retry,
+ @retrofit2.http.Query("expiry-seconds") Integer expirySeconds);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDataResourcesApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDataResourcesApi.java
new file mode 100644
index 000000000..b1befe798
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDataResourcesApi.java
@@ -0,0 +1,173 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AsyncID;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.ResourceArray;
+
+public interface DeviceDataResourcesApi {
+ /**
+ * (DEPRECATED) Delete a resource path. (DEPRECATED) A request to delete a resource path must be handled by both
+ * Device Management Client and Device Management Connect. All resource APIs are asynchronous. These APIs respond
+ * only if the device is on and connected to Device Management Connect, and there is an active notification channel.
+ * **Example:** ``` curl -X DELETE
+ * https://api.us-east-1.mbedcloud.com/v2/endpoints/{device-id}/{resourcePath} \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @param deviceId
+ * The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards.
+ * (required)
+ * @param resourcePath
+ * The resource URL. (required)
+ * @param noResp
+ * If you make a request with `noResp=true`, Device Management Connect makes a CoAP
+ * non-confirmable request to the device. Such requests are not guaranteed to arrive at the device, and
+ * do not return an async-response-id. When calls with this parameter enabled succeed, they return with
+ * the status code `204 No Content`. If the underlying protocol does not support
+ * non-confirmable requests, or if the endpoint is registered in queue mode, the response is status code
+ * `409 Conflict`. (optional)
+ * @return Call<AsyncID>
+ */
+ @DELETE("v2/endpoints/{device-id}/{resourcePath}")
+ Call deleteResourcePath(@retrofit2.http.Path(value = "device-id", encoded = true) String deviceId,
+ @retrofit2.http.Path(value = "resourcePath", encoded = true) String resourcePath,
+ @retrofit2.http.Query("noResp") Boolean noResp);
+
+ /**
+ * (DEPRECATED) Execute a function on a Resource or create new Object instance. (DEPRECATED) [Execute a
+ * function](https://developer.pelion.com/docs/device-management/current/resources/handle-resource-webapp.html#the-execute-operation)
+ * on an existing resource and create a new Object instance on the device. The resource path does not have to exist;
+ * you can set it with the call. The maximum length of the resource path is 255 characters. All resource APIs are
+ * asynchronous. These APIs respond only if the device is on and connected to Device Management Connect, and there
+ * is an active notification channel. Supported content types depend on the device and its resource. Device
+ * Management translates HTTP to the equivalent CoAP content type. **Example:** This example resets the min and max
+ * values of the [temperature sensor](http://www.openmobilealliance.org/tech/profiles/lwm2m/3303.xml) instance 0 by
+ * executing Resource 5605 'Reset Min and Max Measured Values'. ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/v2/endpoints/{device-id}/3303/0/5605 \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @param deviceId
+ * The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards.
+ * (required)
+ * @param resourcePath
+ * The resource URL. (required)
+ * @param resourceFunction
+ * This value is not needed. Most of the time, resources do not accept a function; they have their own
+ * functions predefined. You can use this to trigger them. If a function is included, the body of this
+ * request is passed as a char* to the function in Device Management Client. (optional)
+ * @param noResp
+ * If you make a request with `noResp=true`, Device Management Connect makes a CoAP
+ * non-confirmable request to the device. Such requests are not guaranteed to arrive in the device, and
+ * you do not get back an async-response-id. When calls with this parameter enabled succeed, they return
+ * with the status code `204 No Content`. If the underlying protocol does not support
+ * non-confirmable requests, or if the endpoint is registered in queue mode, the response is status code
+ * `409 Conflict`. (optional)
+ * @return Call<AsyncID>
+ */
+ @Headers({ "Content-Type:application/vnd.oma.lwm2m+json" })
+ @POST("v2/endpoints/{device-id}/{resourcePath}")
+ Call
+ executeOrCreateResource(@retrofit2.http.Path(value = "device-id", encoded = true) String deviceId,
+ @retrofit2.http.Path(value = "resourcePath", encoded = true) String resourcePath,
+ @retrofit2.http.Body String resourceFunction,
+ @retrofit2.http.Query("noResp") Boolean noResp);
+
+ /**
+ * List the resources on a device. Retrieves information about the resource structure for a device from Device
+ * Management. This call does not reach the device. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v2/endpoints/{device-id} \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @param deviceId
+ * The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards.
+ * (required)
+ * @return Call<ResourceArray>
+ */
+ @GET("v2/endpoints/{device-id}")
+ Call getEndpointResources(@retrofit2.http.Path(value = "device-id", encoded = true) String deviceId);
+
+ /**
+ * (DEPRECATED) Read from a resource. (DEPRECATED) Requests the resource value either from the device or cache. If
+ * the value is not in the cache, the request goes all the way to the device. When the response is available, an
+ * `AsyncIDResponse` JSON object is received in the notification channel. The resource values can also be
+ * in cache based on `max_age` defined by the device. The value found from the cache is returned
+ * immediately in the response. The preferred way to get resource values is to use the **subscribe** and
+ * **callback** methods. All resource APIs are asynchronous. These APIs only respond if the device is on and
+ * connected to Device Management. See also how [resource
+ * caching](https://developer.pelion.com/docs/device-management/current/connecting/device-guidelines.html#resource-cache)
+ * works. Please see the [Lightweight Machine to Machine Technical
+ * specification](http://www.openmobilealliance.org/release/LightweightM2M/V1_0-20170208-A/OMA-TS-LightweightM2M-V1_0-20170208-A.pdf)
+ * for more information. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v2/endpoints/{device-id}/{resourcePath} \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @param deviceId
+ * Unique Device Management device ID for the endpoint. The ID must be an exact match. Do not use
+ * wildcards. (required)
+ * @param resourcePath
+ * The resource URL. (required)
+ * @param cacheOnly
+ * If true, the response comes only from the cache. Default: false. Device Management Connect caches the
+ * received resource values for the time of
+ * [max_age](https://developer.pelion.com/docs/device-management/current/resources/working-with-the-resources.html)
+ * defined in the client. (optional)
+ * @param noResp
+ * If a request is made with `noResp=true`, Device Management Connect makes a CoAP
+ * non-confirmable request to the device. Such requests are not guaranteed to arrive on the device, and
+ * no `async-response-id` returns. Successful calls return with the status code `204 No
+ * Content`. If the underlying protocol does not support non-confirmable requests, or if the
+ * endpoint is registered in queue mode, the response is status code `409 Conflict`. (optional)
+ * @return Call<Void>
+ */
+ @GET("v2/endpoints/{device-id}/{resourcePath}")
+ Call getResourceValue(@retrofit2.http.Path(value = "device-id", encoded = true) String deviceId,
+ @retrofit2.http.Path(value = "resourcePath", encoded = true) String resourcePath,
+ @retrofit2.http.Query("cacheOnly") Boolean cacheOnly,
+ @retrofit2.http.Query("noResp") Boolean noResp);
+
+ /**
+ * (DEPRECATED) Write to a Resource or use write-attributes (notification rules) for a Resource. (DEPRECATED) With
+ * this API, you can [write a new value to existing
+ * Resources](https://developer.pelion.com/docs/device-management/current/resources/handle-resource-webapp.html) or
+ * use the **write** attribute to set [notification
+ * rules](https://developer.pelion.com/docs/device-management/current/resources/resource-change-webapp.html) for the
+ * Resources. The notification rules only work on the device client side and may not be supported by all clients.
+ * This API can also be used to transfer files to the device. Device Management Connect LwM2M server implements
+ * Option 1 from RFC7959. The maximum block size is 1024 bytes. Note block size versus transferred file size in
+ * low-quality networks. The customer application needs to know what type of file is transferred (for example, TXT)
+ * and the customer can encrypt the payload. The maximum payload size is 1048576 bytes. All resource APIs are
+ * asynchronous. These APIs respond only if the device is on and connected to Device Management Connect, and there
+ * is an active notification channel. Supported content types depend on the device and its resource. Device
+ * Management translates HTTP to equivalent CoAP content type. **Example:** This example sets the alarm on a buzzer.
+ * The command writes the [Buzzer](http://www.openmobilealliance.org/tech/profiles/lwm2m/3338.xml) instance 0,
+ * \"On/Off\" boolean resource to '1'. ``` curl -X PUT
+ * https://api.us-east-1.mbedcloud.com/v2/endpoints/{device-id}/3338/0/5850 \\ -H \"content-type:
+ * text/plain\" \\ -H 'Authorization: Bearer <access_key>' \\ -d '1' ```
+ *
+ * @param deviceId
+ * The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards.
+ * (required)
+ * @param resourcePath
+ * Resource URL. (required)
+ * @param resourceValue
+ * The value to set to the resource. (required)
+ * @param noResp
+ * If you make a request with `noResp=true`, Device Management Connect makes a CoAP
+ * non-confirmable request to the device. Such requests are not guaranteed to arrive to the device, and
+ * do not return an `async_response_id`. When a call with this parameter enabled succeeds, it
+ * return status code `204 No Content`. If the underlying protocol does not support
+ * non-confirmable requests, or if the endpoint is registered in queue mode, the response is status code
+ * `409 Conflict`. (optional)
+ * @return Call<AsyncID>
+ */
+ @Headers({ "Content-Type:application/vnd.oma.lwm2m+json" })
+ @PUT("v2/endpoints/{device-id}/{resourcePath}")
+ Call updateResourceValue(@retrofit2.http.Path(value = "device-id", encoded = true) String deviceId,
+ @retrofit2.http.Path(value = "resourcePath", encoded = true) String resourcePath,
+ @retrofit2.http.Body String resourceValue,
+ @retrofit2.http.Query("noResp") Boolean noResp);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDataSubscriptionsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDataSubscriptionsApi.java
new file mode 100644
index 000000000..32e66322c
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDataSubscriptionsApi.java
@@ -0,0 +1,168 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.PresubscriptionArray;
+
+public interface DeviceDataSubscriptionsApi {
+ /**
+ * Subscribe to a resource to receive updates about resource changes. Subscribe to a resource to receive updated
+ * resource content, periodically or based on a more sophisticated solution-dependent logic. To place dynamic
+ * observation rules for individual object instances and resources and define when the device sends observations,
+ * set [notification
+ * rules](https://developer.pelion.com/docs/device-management/current/resources/resource-change-webapp.html).
+ * **Note:** Device Management removes all manual subscriptions during a full device registration, at which point
+ * applications must re-subscribe. To avoid this, use `/subscriptions` to set a pre-subscription. You can
+ * subscribe to resources, objects and object instances. **Example:** ``` curl -X PUT
+ * https://api.us-east-1.mbedcloud.com/v2/subscriptions/{device-id}/{resourcePath} \\ -H 'Authorization: Bearer
+ * <access_key>' ``` **Important:** You must also call a
+ * [`/notification/callback`](https://developer.pelion.com/docs/device-management-api/notifications/)
+ * method for Device Management Connect to push resource change notifications.
+ *
+ * @param deviceId
+ * The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards.
+ * (required)
+ * @param resourcePath
+ * The resource URL. This can be the path to: - An object; for example, `3303`. - An object
+ * instance; for example `3303/0`. - A resource; for example `3303/0/5602`. For more
+ * information about the Device Management resource model, please see the [Device Management
+ * documentation](https://developer.pelion.com/docs/device-management/current/resources/resource-model.html).
+ * (required)
+ * @return Call<Void>
+ */
+ @PUT("v2/subscriptions/{device-id}/{resourcePath}")
+ Call
+ addResourceSubscription(@retrofit2.http.Path(value = "device-id", encoded = true) String deviceId,
+ @retrofit2.http.Path(value = "resourcePath", encoded = true) String resourcePath);
+
+ /**
+ * Read the subscription status for a specific resource. Check whether you are subscribed to receive resource
+ * content updates for a specific resource.
+ *
+ * @param deviceId
+ * The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards.
+ * (required)
+ * @param resourcePath
+ * The resource URL. This can be the path to: - An object; for example, `3303`. - An object
+ * instance; for example `3303/0`. - A resource; for example `3303/0/5602`. For more
+ * information about the Device Management resource model, please see the [Device Management
+ * documentation](https://developer.pelion.com/docs/device-management/current/resources/resource-model.html).
+ * (required)
+ * @return Call<Void>
+ */
+ @GET("v2/subscriptions/{device-id}/{resourcePath}")
+ Call
+ checkResourceSubscription(@retrofit2.http.Path(value = "device-id", encoded = true) String deviceId,
+ @retrofit2.http.Path(value = "resourcePath", encoded = true) String resourcePath);
+
+ /**
+ * Delete all subscriptions on a device. Delete all resource subscriptions in a single device. **Example:**
+ * ``` curl -X DELETE https://api.us-east-1.mbedcloud.com/v2/subscriptions/{device-id} \\ -H
+ * 'Authorization: Bearer <access_key>' ```
+ *
+ * @param deviceId
+ * The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards.
+ * (required)
+ * @return Call<Void>
+ */
+ @DELETE("v2/subscriptions/{device-id}")
+ Call deleteEndpointSubscriptions(@retrofit2.http.Path(value = "device-id", encoded = true) String deviceId);
+
+ /**
+ * Remove pre-subscriptions. Remove pre-subscriptions. **Example:** ``` curl -X DELETE
+ * https://api.us-east-1.mbedcloud.com/v2/subscriptions \\ -H 'Authorization: Bearer <access_key>'
+ * ```
+ *
+ * @return Call<Void>
+ */
+ @DELETE("v2/subscriptions")
+ Call deletePreSubscriptions();
+
+ /**
+ * Remove a subscription. Remove an existing subscription to a resource. **Example:** ``` curl -X
+ * DELETE https://api.us-east-1.mbedcloud.com/v2/subscriptions/{device-id}/{resourcePath} \\ -H 'Authorization:
+ * Bearer <access_key>' ```
+ *
+ * @param deviceId
+ * The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards.
+ * (required)
+ * @param resourcePath
+ * The resource URL. This can be the path to: - An object; for example, `3303`. - An object
+ * instance; for example `3303/0`. - A resource; for example `3303/0/5602`. For more
+ * information about the Device Management resource model, please see the [Device Management
+ * documentation](https://developer.pelion.com/docs/device-management/current/resources/resource-model.html).
+ * (required)
+ * @return Call<Void>
+ */
+ @DELETE("v2/subscriptions/{device-id}/{resourcePath}")
+ Call
+ deleteResourceSubscription(@retrofit2.http.Path(value = "device-id", encoded = true) String deviceId,
+ @retrofit2.http.Path(value = "resourcePath", encoded = true) String resourcePath);
+
+ /**
+ * View all subscriptions on a device. Retrieve a list of all subscribed resources on a single device. **Example:**
+ * ``` curl -X GET https://api.us-east-1.mbedcloud.com/v2/subscriptions/{device-id} \\ -H
+ * 'Authorization: Bearer <access_key>' ```
+ *
+ * @param deviceId
+ * The device ID generated by Device Management. The ID must be an exact match. Do not use wildcards.
+ * (required)
+ * @return Call<String>
+ */
+ @GET("v2/subscriptions/{device-id}")
+ Call getEndpointSubscriptions(@retrofit2.http.Path(value = "device-id", encoded = true) String deviceId);
+
+ /**
+ * View pre-subscriptions. Retrieve pre-subscription data. The server returns a JSON structure. If there are no
+ * pre-subscribed resources, the server returns an empty array. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v2/subscriptions \\ -H 'Authorization: Bearer <access_key>'
+ * ```
+ *
+ * @return Call<PresubscriptionArray>
+ */
+ @GET("v2/subscriptions")
+ Call getPreSubscriptions();
+
+ /**
+ * Set pre-subscriptions. A pre-subscription is a set of rules you define to subscribe to specific resources
+ * automatically when certain devices register or does a register update. You can set subscription rules based on
+ * the endpoint ID (optionally having an `*` character at the end), endpoint type, a list of resources, or
+ * expressions with an `*` character at the end. When a device that meets the subscription rules
+ * registered, Device Management Connect automatically sends subscription requests to the device for the resources
+ * you specify. To remove the pre-subscription data, put an empty array as a rule. To place dynamic observation
+ * rules for individual object instances and resources and define when the device sends observations, set
+ * [notification
+ * rules](https://developer.pelion.com/docs/device-management/current/resources/resource-change-webapp.html).
+ * **Note:** The subscription is bound to the application you are using. To get notifications of the resource value
+ * changes, you need to create an [event notification
+ * channel](https://developer.pelion.com/docs/device-management/current/integrate-web-app/event-notification.html)
+ * with an access key of the same application. **Example request:** ``` curl -X PUT
+ * https://api.us-east-1.mbedcloud.com/v2/subscriptions \\ -H 'Authorization: Bearer <access_key>' \\
+ * -H 'content-type: application/json' \\ -d '[ { \"endpoint-name\": \"node-001\",
+ * \"resource-path\": [\"/dev\"] }, { \"endpoint-type\": \"Light\",
+ * \"resource-path\": [\"/sen/_*\"] }, { \"endpoint-name\": \"node*\" }, {
+ * \"endpoint-type\": \"Sensor\" }, { \"resource-path\":
+ * [\"/dev/temp\",\"/dev/hum\"] } ]' ``` - Subscribe to `/dev`
+ * resource of endpoint named `node-001`. - Subscribe to `Light` type of endpoints and their
+ * resources prefixed with `/sen/`. - Subscribe to all observable resources of endpoint names prefixed
+ * with `node`. - Subscribe to all observable resources of `Sensor` type endpoints. - Subscribe
+ * to `/dev/temp` and `/dev/hum` resources of all endpoints. **Limits**: - The maximum length of
+ * the endpoint name and endpoint type is 64 characters. - The maximum length of the resource path is 128
+ * characters. - You can subscribe to 256 separate resource paths. - The maximum number of pre-subscription entries
+ * is 1024. **Note**: To save bandwidth and avoid unnecessary traffic, use resource path patterns to limit the
+ * matching resources in the presubscription data. This prevents your web application from receiving unwanted
+ * resource notifications. See [Subscribe only to what you
+ * need](https://developer.pelion.com/docs/device-management/current/resources/resource-change-webapp.html).
+ *
+ * @param presubscription
+ * Array of pre-subscriptions. (required)
+ * @return Call<Void>
+ */
+ @Headers({ "Content-Type:application/json" })
+ @PUT("v2/subscriptions")
+ Call updatePreSubscriptions(@retrofit2.http.Body PresubscriptionArray presubscription);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryDeviceQueriesApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryDeviceQueriesApi.java
new file mode 100644
index 000000000..65bd76645
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryDeviceQueriesApi.java
@@ -0,0 +1,171 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import org.joda.time.DateTime;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.DeviceQuery;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.DeviceQueryPage;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.DeviceQueryPostPutRequest;
+
+public interface DeviceDirectoryDeviceQueriesApi {
+ /**
+ * Create a device query. Create a new device query.
+ *
+ * @param device
+ * (required)
+ * @return Call<DeviceQuery>
+ */
+ @POST("v3/device-queries/")
+ Call deviceQueryCreate(@retrofit2.http.Body DeviceQueryPostPutRequest device);
+
+ /**
+ * Delete a device query. Delete a device query.
+ *
+ * @param queryId
+ * (required)
+ * @return Call<Void>
+ */
+ @DELETE("v3/device-queries/{query_id}/")
+ Call deviceQueryDestroy(@retrofit2.http.Path(value = "query_id", encoded = true) String queryId);
+
+ /**
+ * List device queries. List all device queries.
+ *
+ * @param limit
+ * How many objects to retrieve in the page (2-1000). Limit values outside of this range are set to the
+ * closest limit. (optional)
+ * @param order
+ * Record order. Acceptable values: ASC, DESC. Default: ASC. (optional)
+ * @param after
+ * The ID of the item after which to retrieve the next page. (optional)
+ * @param include
+ * Comma-separated list of data fields to return. Currently supported: `total_count`.
+ * (optional)
+ * @param filter
+ * URL-encoded query string parameter to filter returned data. ##### Filtering `?filter={URL
+ * encoded query string}` The query string is made up of key/value pairs separated by ampersands. So
+ * for a query of `key1=value1&key2=value2&key3=value3`, this would be
+ * encoded as: `?filter=key1%3Dvalue1%26key2%3Dvalue2%26key3%3Dvalue3`. ###### Filterable
+ * fields The below table lists all filterable fields: <table> <thead> <tr>
+ * <th>Field</th> <th>= / __eq / __neq</th> <th>__in /
+ * __nin</th> <th>__lte / __gte</th> <tr> <thead> <tbody> <tr>
+ * <td>created_at</td> <td>✓</td> <td>✓</td>
+ * <td>✓</td> </tr> <tr> <td>etag</td> <td>✓</td>
+ * <td>✓</td> <td>✓</td> </tr> <tr> <td>id</td>
+ * <td>✓</td> <td>✓</td> <td> </td> </tr>
+ * <tr> <td>name</td> <td>✓</td> <td>✓</td>
+ * <td> </td> </tr> <tr> <td>query</td>
+ * <td>✓</td> <td>✓</td> <td> </td> </tr>
+ * <tr> <td>updated_at</td> <td>✓</td> <td>✓</td>
+ * <td>✓</td> </tr> </tbody> </table> The examples below show
+ * the queries in *unencoded* form. ###### By device query properties (all properties are filterable):
+ * For example: `description={value}` ###### On date-time fields: Date-time fields should
+ * be specified in UTC RFC3339 format `YYYY-MM-DDThh:mm:ss.msZ`. There are three permitted
+ * variations: * UTC RFC3339 with milliseconds, for example, 2016-11-30T16:25:12.1234Z. * UTC RFC3339
+ * without milliseconds, for example, 2016-11-30T16:25:12Z. * UTC RFC3339 shortened - without
+ * milliseconds and punctuation, for example, 20161130T162512Z. Date-time filtering supports three
+ * operators: * Equality. * Greater than or equal to – field name suffixed with
+ * `__gte`. * Less than or equal to – field name suffixed with `__lte`.
+ * Lower and upper limits to a date-time range may be specified by including both the `__gte`
+ * and `__lte` forms in the filter: `{field name}[|__lte|__gte]={UTC RFC3339
+ * date-time}`. ##### Multi-field example
+ * `query_id=0158d38771f70000000000010010038c&created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z`
+ * Encoded:
+ * `filter=query_id%3D0158d38771f70000000000010010038c%26created_at__gte%3D2016-11-30T16%3A25%3A12.1234Z%26created_at__lte%3D2016-11-30T00%3A00%3A00Z`
+ * ##### Filtering with filter operators String field filtering supports the following operators: *
+ * Equality: `__eq`. * Non-equality: `__neq`. * In : `__in`. * Not in:
+ * `__nin`. For `__in` and `__nin` filters list of parameters must be
+ * comma-separated: `name__nin=query1,query2` (optional)
+ * @param createdAtIn
+ * in filter for the \"created_at\" field (optional)
+ * @param createdAtNin
+ * nin filter for the \"created_at\" field (optional)
+ * @param createdAtLte
+ * lte filter for the \"created_at\" field (optional)
+ * @param createdAtGte
+ * gte filter for the \"created_at\" field (optional)
+ * @param idEq
+ * eq filter for the \"id\" field (optional)
+ * @param idNeq
+ * neq filter for the \"id\" field (optional)
+ * @param idIn
+ * in filter for the \"id\" field (optional)
+ * @param idNin
+ * nin filter for the \"id\" field (optional)
+ * @param nameEq
+ * eq filter for the \"name\" field (optional)
+ * @param nameNeq
+ * neq filter for the \"name\" field (optional)
+ * @param nameIn
+ * in filter for the \"name\" field (optional)
+ * @param nameNin
+ * nin filter for the \"name\" field (optional)
+ * @param queryEq
+ * eq filter for the \"query\" field (optional)
+ * @param queryNeq
+ * neq filter for the \"query\" field (optional)
+ * @param queryIn
+ * in filter for the \"query\" field (optional)
+ * @param queryNin
+ * nin filter for the \"query\" field (optional)
+ * @param updatedAtIn
+ * in filter for the \"updated_at\" field (optional)
+ * @param updatedAtNin
+ * nin filter for the \"updated_at\" field (optional)
+ * @param updatedAtLte
+ * lte filter for the \"updated_at\" field (optional)
+ * @param updatedAtGte
+ * gte filter for the \"updated_at\" field (optional)
+ * @return Call<DeviceQueryPage>
+ */
+ @GET("v3/device-queries/")
+ Call
+ deviceQueryList(@retrofit2.http.Query("limit") Integer limit, @retrofit2.http.Query("order") String order,
+ @retrofit2.http.Query("after") String after, @retrofit2.http.Query("include") String include,
+ @retrofit2.http.Query("filter") String filter,
+ @retrofit2.http.Query("created_at__in") String createdAtIn,
+ @retrofit2.http.Query("created_at__nin") String createdAtNin,
+ @retrofit2.http.Query("created_at__lte") DateTime createdAtLte,
+ @retrofit2.http.Query("created_at__gte") DateTime createdAtGte,
+ @retrofit2.http.Query("id__eq") String idEq, @retrofit2.http.Query("id__neq") String idNeq,
+ @retrofit2.http.Query("id__in") String idIn, @retrofit2.http.Query("id__nin") String idNin,
+ @retrofit2.http.Query("name__eq") String nameEq,
+ @retrofit2.http.Query("name__neq") String nameNeq,
+ @retrofit2.http.Query("name__in") String nameIn,
+ @retrofit2.http.Query("name__nin") String nameNin,
+ @retrofit2.http.Query("query__eq") String queryEq,
+ @retrofit2.http.Query("query__neq") String queryNeq,
+ @retrofit2.http.Query("query__in") String queryIn,
+ @retrofit2.http.Query("query__nin") String queryNin,
+ @retrofit2.http.Query("updated_at__in") String updatedAtIn,
+ @retrofit2.http.Query("updated_at__nin") String updatedAtNin,
+ @retrofit2.http.Query("updated_at__lte") DateTime updatedAtLte,
+ @retrofit2.http.Query("updated_at__gte") DateTime updatedAtGte);
+
+ /**
+ * Retrieve a device query. Retrieve a specific device query.
+ *
+ * @param queryId
+ * (required)
+ * @return Call<DeviceQuery>
+ */
+ @GET("v3/device-queries/{query_id}/")
+ Call deviceQueryRetrieve(@retrofit2.http.Path(value = "query_id", encoded = true) String queryId);
+
+ /**
+ * Update a device query. Update a specifc device query.
+ *
+ * @param queryId
+ * (required)
+ * @param body
+ * Device query update object. (required)
+ * @return Call<DeviceQuery>
+ */
+ @PUT("v3/device-queries/{query_id}/")
+ Call deviceQueryUpdate(@retrofit2.http.Path(value = "query_id", encoded = true) String queryId,
+ @retrofit2.http.Body DeviceQueryPostPutRequest body);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryDevicesApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryDevicesApi.java
index 87d18de1e..bf917c905 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryDevicesApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryDevicesApi.java
@@ -14,7 +14,8 @@
public interface DeviceDirectoryDevicesApi {
/**
- * Create a device. Create a new device.
+ * Create a device. Create a new device in Device Management. Usually you do not need to create a device this way,
+ * as it is automatically created when it bootstraps or connects to Device Management.
*
* @param device
* (required)
@@ -25,18 +26,23 @@ public interface DeviceDirectoryDevicesApi {
/**
* Delete a device. Delete device. Only available for devices with a developer certificate. Attempting to delete a
- * device with a production certicate returns a 400 response.
+ * device with a production certificate returns a 400 response.
*
* @param id
- * The ID of the device. (required)
+ * The [Device
+ * ID](https://developer.pelion.com/docs/device-management/current/connecting/device-identity.html)
+ * created by Device Management. (required)
* @return Call<Void>
*/
@DELETE("v3/devices/{id}/")
Call deviceDestroy(@retrofit2.http.Path(value = "id", encoded = true) String id);
/**
- * List all devices. List all devices. **Example:** Following example filters devices according to state field and
- * returns only devices in 'registered' state: ``` curl -X GET
+ * List all devices. List all devices enrolled to Device Management for the account. The URL length must be fewer
+ * than 4096 characters. Requests that exceed this limit, such as those including too many query parameters in a
+ * filter, fail with a bad request response. devices with too long list of query parameters, the request is deemed
+ * as bad request. **Example:** Following example filters devices according to state field and returns only devices
+ * in 'registered' state: ``` curl -X GET
* https://api.us-east-1.mbedcloud.com/v3/devices?filter=state%3Dregistered \\ -H 'Authorization: Bearer
* <API key>' ```
*
@@ -47,6 +53,38 @@ public interface DeviceDirectoryDevicesApi {
* Record order. Acceptable values: ASC, DESC. Default: ASC. (optional)
* @param after
* The ID of the item after which to retrieve the next page. (optional)
+ * @param filter
+ * URL encoded query string parameter to filter returned data. ##### Filtering
+ * ```?filter={URL encoded query string}``` The query string is made
+ * up of key/value pairs separated by ampersands. So for a query of
+ * ```key1=value1&key2=value2&key3=value3``` this
+ * would be encoded as follows:
+ * ```?filter=key1%3Dvalue1%26key2%3Dvalue2%26key3%3Dvalue3``` The
+ * examples below show the queries in *unencoded* form. ###### By device properties (all properties are
+ * filterable):
+ * ```state=[unenrolled|cloud_enrolling|bootstrapped|registered]```
+ * ```device_class={value}``` ###### On date-time fields: Date-time
+ * fields should be specified in UTC RFC3339 format
+ * ```YYYY-MM-DDThh:mm:ss.msZ```. There are three permitted variations: *
+ * UTC RFC3339 with milliseconds e.g. 2016-11-30T16:25:12.1234Z * UTC RFC3339 without milliseconds e.g.
+ * 2016-11-30T16:25:12Z * UTC RFC3339 shortened - without milliseconds and punctuation e.g.
+ * 20161130T162512Z Date-time filtering supports three operators: * equality * greater than or equal to
+ * – field name suffixed with ```__gte``` * less than or equal to
+ * – field name suffixed with ```__lte``` Lower and upper limits
+ * to a date-time range may be specified by including both the ```__gte```
+ * and ```__lte``` forms in the filter. ```{field
+ * name}[|__lte|__gte]={UTC RFC3339 date-time}``` ###### On device custom attributes:
+ * ```custom_attributes__{param}={value}```
+ * ```custom_attributes__tag=TAG1``` ###### On device component
+ * attributes: ```component_attributes__{name}={version}```
+ * ```component_attributes__ble=1.2.3``` ##### Multi-field example
+ * ```state=bootstrapped&created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z```
+ * Encoded:
+ * ```?filter=state%3Dbootstrapped%26created_at__gte%3D2016-11-30T16%3A25%3A12.1234Z%26created_at__lte%3D2016-11-30T00%3A00%3A00Z```
+ * ##### Filtering with filter operators String field filtering supports the following operators: *
+ * equality: `__eq` * non-equality: `__neq` * in : `__in` * not in:
+ * `__nin` For `__in` and `__nin` filters list of parameters must be
+ * comma-separated: `state__nin=unenrolled,dergistered` (optional)
* @param include
* Comma-separated list of data fields to return. Currently supported: `total_count`.
* (optional)
@@ -286,6 +324,14 @@ public interface DeviceDirectoryDevicesApi {
* in filter for the \"name\" field (optional)
* @param nameNin
* nin filter for the \"name\" field (optional)
+ * @param netIdEq
+ * eq filter for the \"net_id\" field (optional)
+ * @param netIdNeq
+ * neq filter for the \"net_id\" field (optional)
+ * @param netIdIn
+ * in filter for the \"net_id\" field (optional)
+ * @param netIdNin
+ * nin filter for the \"net_id\" field (optional)
* @param serialNumberEq
* eq filter for the \"serial_number\" field (optional)
* @param serialNumberNeq
@@ -323,7 +369,8 @@ public interface DeviceDirectoryDevicesApi {
@GET("v3/devices/")
Call
deviceList(@retrofit2.http.Query("limit") Integer limit, @retrofit2.http.Query("order") String order,
- @retrofit2.http.Query("after") String after, @retrofit2.http.Query("include") String include,
+ @retrofit2.http.Query("after") String after, @retrofit2.http.Query("filter") String filter,
+ @retrofit2.http.Query("include") String include,
@retrofit2.http.Query("lifecycle_status__eq") String lifecycleStatusEq,
@retrofit2.http.Query("lifecycle_status__neq") String lifecycleStatusNeq,
@retrofit2.http.Query("lifecycle_status__in") String lifecycleStatusIn,
@@ -436,6 +483,10 @@ public interface DeviceDirectoryDevicesApi {
@retrofit2.http.Query("mechanism_url__nin") String mechanismUrlNin,
@retrofit2.http.Query("name__eq") String nameEq, @retrofit2.http.Query("name__neq") String nameNeq,
@retrofit2.http.Query("name__in") String nameIn, @retrofit2.http.Query("name__nin") String nameNin,
+ @retrofit2.http.Query("net_id__eq") String netIdEq,
+ @retrofit2.http.Query("net_id__neq") String netIdNeq,
+ @retrofit2.http.Query("net_id__in") String netIdIn,
+ @retrofit2.http.Query("net_id__nin") String netIdNin,
@retrofit2.http.Query("serial_number__eq") String serialNumberEq,
@retrofit2.http.Query("serial_number__neq") String serialNumberNeq,
@retrofit2.http.Query("serial_number__in") String serialNumberIn,
@@ -454,13 +505,18 @@ public interface DeviceDirectoryDevicesApi {
@retrofit2.http.Query("vendor_id__nin") String vendorIdNin);
/**
- * Get a device. Retrieve information about a specific device. **Example:** Following example must be updated with
- * the device's ID to the URL. The id is from of \"01667c6e992c00000000000100100370\"
+ * Get a device. Retrieve information about a specific device. This API returns
+ * [DeviceData](https://developer.pelion.com/docs/device-management-api/device-directory/). If you want to see the
+ * structure of resources in the device or the actual resource values, use the [Connect
+ * API](https://developer.pelion.com/docs/device-management-api/connect/). **Example:** Following example must be
+ * updated with the device's ID to the URL. The id is from of \"01667c6e992c00000000000100100370\"
* ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/devices/<device_ID> \\ -H
* 'Authorization: Bearer <API key>' ```
*
* @param id
- * The ID of the device. (required)
+ * The [Device
+ * ID](https://developer.pelion.com/docs/device-management/current/connecting/device-identity.html)
+ * created by Device Management. (required)
* @return Call<DeviceData>
*/
@GET("v3/devices/{id}/")
@@ -474,7 +530,9 @@ public interface DeviceDirectoryDevicesApi {
* description field\"}' ```
*
* @param id
- * The ID of the device. (required)
+ * The [Device
+ * ID](https://developer.pelion.com/docs/device-management/current/connecting/device-identity.html)
+ * created by Device Management. (required)
* @param device
* (required)
* @return Call<DeviceData>
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryEventsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryEventsApi.java
index ec783e81b..8fe26dcfb 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryEventsApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryEventsApi.java
@@ -11,8 +11,11 @@
public interface DeviceDirectoryEventsApi {
/**
- * List all device events. List all device events for an account. **Example:** Following example gets device-events
- * limiting returned results to max 5 events ``` curl -X GET
+ * List all device events. List all or a filtered list of device events for the account. Device events are events
+ * significant to operation or lifetime, such as creation, firmware update, and suspension. To see statistics for
+ * device connectivity and usage, use the [Statistics
+ * API](https://developer.pelion.com/docs/device-management-api/connect-statistics/). **Example:** Following example
+ * gets device-events limiting returned results to max 5 events ``` curl -X GET
* https://api.us-east-1.mbedcloud.com/v3/device-events?limit=5 \\ -H 'Authorization: Bearer <API
* key>' ``` or to get events for certain device filter based on device_id: ```
* curl -X GET https://api.us-east-1.mbedcloud.com/v3/device-events?device_id=<device_id> \\ -H
@@ -31,9 +34,9 @@ public interface DeviceDirectoryEventsApi {
* @param filter
* URL-encoded query string parameter to filter returned data. ##### Filtering `?filter={URL
* encoded query string}` The query string is made up of key/value pairs separated by ampersands. So
- * for a query of `key1=value1&key2=value2&key3=value3`, this would be
- * encoded as `?filter=key1%3Dvalue1%26key2%3Dvalue2%26key3%3Dvalue3`. ###### Filterable
- * fields: The below table lists all filterable fields: <table> <thead> <tr>
+ * for a query of `key1=value1&key2=value2&key3=value3`, this is encoded
+ * as `?filter=key1%3Dvalue1%26key2%3Dvalue2%26key3%3Dvalue3`. ###### Filterable fields:
+ * The below table lists all filterable fields: <table> <thead> <tr>
* <th>Field</th> <th>= / __eq / __neq</th> <th>__in /
* __nin</th> <th>__lte / __gte</th> <tr> <thead> <tbody> <tr>
* <td>date_time</td> <td>✓</td> <td>✓</td>
@@ -138,10 +141,12 @@ public interface DeviceDirectoryEventsApi {
@retrofit2.http.Query("state_change__neq") Boolean stateChangeNeq);
/**
- * Retrieve a device event. Retrieve a specific device event. **Example:** To fetch a specific event you can use the
- * 'id' field form the '/v3/device-events'. Form of '016c03d40a4e000000000001001003b4'
- * ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/device-events/<device_event_id> \\ -H
- * 'Authorization: Bearer <API key>' ```
+ * Retrieve a device event. \"Retrieve a specific device event. See '/v3/device-events/' for
+ * information on device events, and how to get the device_event_id.\" **Example:** To fetch a specific event
+ * you can use the 'id' field from '/v3/device-events'. Form of
+ * '016c03d40a4e000000000001001003b4' ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/device-events/<device_event_id> \\ -H 'Authorization: Bearer
+ * <API key>' ```
*
* @param deviceEventId
* (required)
@@ -152,8 +157,7 @@ public interface DeviceDirectoryEventsApi {
deviceEventRetrieve(@retrofit2.http.Path(value = "device_event_id", encoded = true) String deviceEventId);
/**
- * DEPRECATED: List all device events. DEPRECATED: List all device events. Use `/v3/device-events/`
- * instead.
+ * DEPRECATED: List all device events. DEPRECATED: This API is replaced with `/v3/device-events/`.
*
* @param limit
* How many objects to retrieve in the page (2-1000). Limit values outside of this range are set to the
@@ -281,8 +285,8 @@ public interface DeviceDirectoryEventsApi {
@retrofit2.http.Query("state_change__nin") String stateChangeNin);
/**
- * DEPRECATED: Retrieve a device event. Retrieve device event (deprecated, use /v3/device-events/{device_event_id}/
- * instead).
+ * DEPRECATED: Retrieve a device event. DEPRECATED: This API is replaced by `/v3/device-events/` and
+ * `/v3/device-events/{device_event_id}/`.
*
* @param deviceEventId
* (required)
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryGroupsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryGroupsApi.java
index 304311816..49d6d9f06 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryGroupsApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryGroupsApi.java
@@ -26,7 +26,7 @@ public interface DeviceDirectoryGroupsApi {
Call groupCreate(@retrofit2.http.Body Group group);
/**
- * Delete a group. Delete a group.
+ * Delete a group. Delete a group. This deletes the group, but not the devices in the group.
*
* @param deviceGroupId
* The ID of the group. (required)
@@ -62,7 +62,9 @@ public interface DeviceDirectoryGroupsApi {
* <td>name</td> <td>✓</td> <td>✓</td>
* <td> </td> </tr> <tr> <td>custom_attributes</td>
* <td>✓</td> <td> </td> <td> </td> </tr>
- * <tr> <td>created_at</td> <td>✓</td> <td>✓</td>
+ * <tr> <td>component_attributes</td> <td>✓</td>
+ * <td> </td> <td> </td> </tr> <tr>
+ * <td>created_at</td> <td>✓</td> <td>✓</td>
* <td>✓</td> </tr> <tr> <td>updated_at</td>
* <td>✓</td> <td>✓</td> <td>✓</td> </tr> <tr>
* <td>etag</td> <td>✓</td> <td>✓</td> <td>✓</td>
@@ -77,8 +79,11 @@ public interface DeviceDirectoryGroupsApi {
* suffixed with `__lte`. Lower and upper limits to a date-time range may be specified by
* including both the `__gte` and `__lte` forms in the filter: `{field
* name}[|__lte|__gte]={UTC RFC3339 date-time}` ###### By device group custom attributes:
- * `custom_attributes__{param}={value}` `custom_attributes__tag=TAG1` #####
- * Multi-field example
+ * `custom_attributes__{param}={value}` `custom_attributes__tag=TAG1`
+ * ###### By device group component attributes: `component_attributes__{name}={version}`
+ * `component_attributes__{name}__{operator}={version}`
+ * `component_attributes__ble=1.2.3` `component_attributes__main__gt=1.2.3`
+ * ##### Multi-field example
* `name__eq=mygroup&created_at__gte=2016-11-30T16:25:12.1234Z&created_at__lte=2016-12-30T00:00:00Z`
* Encoded:
* `?filter=name__eq%3Dmygroup%26created_at__gte%3D2016-11-30T16%3A25%3A12.1234Z%26created_at__lte%3D2016-12-30T00%3A00%3A00Z`
@@ -157,7 +162,7 @@ public interface DeviceDirectoryGroupsApi {
@retrofit2.http.Query("updated_at__gte") DateTime updatedAtGte);
/**
- * Add a device to a group. Add one device to a group.
+ * Add a device to a group. Add one device to a group. A device can be in multiple groups.
*
* @param deviceGroupId
* The ID of the group. (required)
@@ -183,7 +188,7 @@ Call groupMembersRemove(@retrofit2.http.Path(value = "device-group-id", en
@retrofit2.http.Body DeviceGroupManipulation body);
/**
- * Get a page of devices. Get a page of devices.
+ * Get a page of devices. Get a page of devices in a specified group.
*
* @param deviceGroupId
* (required)
@@ -433,6 +438,14 @@ Call groupMembersRemove(@retrofit2.http.Path(value = "device-group-id", en
* in filter for the \"name\" field (optional)
* @param nameNin
* nin filter for the \"name\" field (optional)
+ * @param netIdEq
+ * eq filter for the \"net_id\" field (optional)
+ * @param netIdNeq
+ * neq filter for the \"net_id\" field (optional)
+ * @param netIdIn
+ * in filter for the \"net_id\" field (optional)
+ * @param netIdNin
+ * nin filter for the \"net_id\" field (optional)
* @param serialNumberEq
* eq filter for the \"serial_number\" field (optional)
* @param serialNumberNeq
@@ -589,6 +602,10 @@ Call groupMembersRemove(@retrofit2.http.Path(value = "device-group-id", en
@retrofit2.http.Query("name__neq") String nameNeq,
@retrofit2.http.Query("name__in") String nameIn,
@retrofit2.http.Query("name__nin") String nameNin,
+ @retrofit2.http.Query("net_id__eq") String netIdEq,
+ @retrofit2.http.Query("net_id__neq") String netIdNeq,
+ @retrofit2.http.Query("net_id__in") String netIdIn,
+ @retrofit2.http.Query("net_id__nin") String netIdNin,
@retrofit2.http.Query("serial_number__eq") String serialNumberEq,
@retrofit2.http.Query("serial_number__neq") String serialNumberNeq,
@retrofit2.http.Query("serial_number__in") String serialNumberIn,
@@ -607,7 +624,9 @@ Call groupMembersRemove(@retrofit2.http.Path(value = "device-group-id", en
@retrofit2.http.Query("vendor_id__nin") String vendorIdNin);
/**
- * Get a group. Get a group.
+ * Get a group. Returns [DeviceGroup](https://developer.pelion.com/docs/device-management-api/device-directory/)
+ * info what contains info of the group, for example, name and updated date. To list the devices in the group, use
+ * '/v3/device-groups/{device-group-id}/devices/'.
*
* @param deviceGroupId
* The group ID (required)
@@ -618,7 +637,7 @@ Call groupMembersRemove(@retrofit2.http.Path(value = "device-group-id", en
groupRetrieve(@retrofit2.http.Path(value = "device-group-id", encoded = true) String deviceGroupId);
/**
- * Modify the attributes of a group. Modify the attributes of a group.
+ * Modify the attributes of a group. Modify the attributes of a group, such as the description.
*
* @param deviceGroupId
* (required)
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryLifecycleApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryLifecycleApi.java
index c6564740d..53ff1993b 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryLifecycleApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceDirectoryLifecycleApi.java
@@ -14,19 +14,18 @@
public interface DeviceDirectoryLifecycleApi {
/**
* List all device block categories List all device block categories. A block category is a short description of why
- * a device was suspended or returned to service. **Example:** Get all defined categories of why device is blocked
- * from the device management ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/device-block-categories \\ -H 'Authorization: Bearer <API
- * key>' ```
+ * a device was suspended or returned to service. **Example:** Get all defined device suspension categories:
+ * ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/device-block-categories \\ -H
+ * 'Authorization: Bearer <API key>' ```
*
* @param limit
* This endpoint doesn't support paging. Parameter is accepted for API compatibility. Value is
- * ignored (optional)
+ * ignored. (optional)
* @param order
* Record order. Acceptable values: ASC, DESC. Default: ASC. (optional)
* @param after
* This endpoint doesn't support paging. Parameter is accepted for API compatibility. Value is
- * ignored (optional)
+ * ignored. (optional)
* @param include
* Comma-separated list of data fields to return. Currently supported: `total_count`.
* (optional)
@@ -76,14 +75,19 @@ Call blockCategoriesList(@retrofit2.http.Query("limit")
encoded = true) String blockCategoryReference);
/**
- * Return a device to service. Returning a device to service restores connectivity to the device. All API
- * functionality is restored. **Example:** Following example enables device to connect again to Pelion Device
- * Management. Note that the category must match the reason why device was suspended. This device was reported
- * stolen but was now found. ``` curl -X POST
- * https://api.us-east-1.mbedcloud.com/v3/devices/<device_id>/resume \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d '{ \"category\":
- * \"lost_or_stolen\", \"description\": \"Was found, was not stolen but miss
- * placed\"}' ```
+ * Return a device to service. [Returning a device to
+ * service](https://developer.pelion.com/docs/device-management/current/device-management/managing-devices-in-your-account.html#using-the-api-suspending-and-resuming-devices)
+ * allows the device to connect to Device Management again. The connection is established according to the
+ * device's reconnection logic. The device reports a [registration
+ * event](https://developer.pelion.com/docs/device-management-api/connect/) through a [notification
+ * channel](https://developer.pelion.com/docs/device-management/current/integrate-web-app/event-notification.html).
+ * The default reconnection logic is a progressive back-off for 2, 4, 8, or 16 seconds, up to one week. All API
+ * functionality is restored. **Example:** The following example enables a device to reconnect to Pelion Device
+ * Management. The category must match the reason device was suspended. This device was reported stolen, but was
+ * found: ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/devices/<device_id>/resume \\
+ * -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{
+ * \"category\": \"lost_or_stolen\", \"description\": \"Was found, was not stolen
+ * but miss placed\"}' ```
*
* @param id
* The ID of the device. (required)
@@ -96,18 +100,26 @@ Call deviceResume(@retrofit2.http.Path(value = "id", encoded = true) Strin
@retrofit2.http.Body Block block);
/**
- * Suspend a device. Suspending a device prevents it from connecting to Device Management. If a device is currently
- * connected, it will be disconnected. Some API operations will fail while a device is suspended. ***Example:*
- * Following example suspends a device with category \"Lost or stolen\". You can see available categories
- * with '/v3/device-block-categories/'. ``` curl -X POST
- * https://api.us-east-1.mbedcloud.com/v3/devices/<device_id>/suspend \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d '{ \"category\":
- * \"lost_or_stolen\", \"description\": \"EXAMPLE: Customer contacted via phone and
- * reported device being stolen. Specific time of the theft was not know. Device last used in May/2019\"}'
- * ```
+ * Suspend a device. [Suspending a
+ * device](https://developer.pelion.com/docs/device-management/current/device-management/managing-devices-in-your-account.html#suspending-and-resuming-devices)
+ * prevents it from connecting to Device Management. If a device is currently connected, it disconnects and shows as
+ * deregistered. You can also receive [deregistration
+ * events](https://developer.pelion.com/docs/device-management-api/connect/) in [notification
+ * channels](https://developer.pelion.com/docs/device-management/current/integrate-web-app/event-notification.html).
+ * API operations needing device transactions fail while a device is suspended. Example use case to use suspending
+ * is that device is reported lost or stolen. You can block the device to connect and this way prevent device to
+ * cause unreliable data to your system. ***Example:* The following example suspends a device with category
+ * \"Lost or stolen\". You can see available categories with '/v3/device-block-categories/'.
+ * ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/devices/<device_id>/suspend \\ -H
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{
+ * \"category\": \"lost_or_stolen\", \"description\": \"EXAMPLE: Customer
+ * contacted via phone and reported device being stolen. Specific time of the theft was not know. Device last used
+ * in May/2019\"}' ```
*
* @param id
- * The ID of the device. (required)
+ * The [Device
+ * ID](https://developer.pelion.com/docs/device-management/current/connecting/device-identity.html)
+ * created by Device Management. (required)
* @param block
* The device block. (required)
* @return Call<Void>
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceEchoApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceEchoApi.java
new file mode 100644
index 000000000..0c0975316
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceEchoApi.java
@@ -0,0 +1,44 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.EchoDevice;
+
+public interface DeviceEchoApi {
+ /**
+ * Delete the Device Echo object. Calling this API removes your application data and device from the Device Echo
+ * service. You can still find the device using 'GET /v3/devices/{id}' from the Device Directory API. For
+ * privacy reasons, you might need to delete device data that contains personal information about the device owner
+ * or user. Private information is stored by the application; Pelion Device Management Client does not provide or
+ * store any private data. **Note:** If the device is able to connect, its data will reappear in Echo the next time
+ * the device sends that information to the service. To ensure data is permanently removed, suspend the device first
+ * by calling 'POST /v3/devices/{id}/suspend'. **Example:** ``` curl -X DELETE
+ * https://api.us-east-1.mbedcloud.com/v3/devices/{device-id}/echo -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @param deviceId
+ * The device ID generated by Device Management. (required)
+ * @return Call<Void>
+ */
+ @DELETE("v3/devices/{device-id}/echo")
+ Call deleteDeviceEchoObject(@retrofit2.http.Path(value = "device-id", encoded = true) String deviceId);
+
+ /**
+ * Get the Device Echo object. Retrieve the Device Echo object, which represents the last known state of the device.
+ * The state includes the resources and their reported values with the desired state of the device. Auto-observable
+ * and subscribed resources are stored as the reported state of the device. To change the desired state, issue write
+ * commands with `/v2/device-requests/{device-id}`. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/devices/{device-id}/echo -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @param deviceId
+ * The device ID generated by Device Management. (required)
+ * @return Call<EchoDevice>
+ */
+ @GET("v3/devices/{device-id}/echo")
+ Call getDeviceEchoObject(@retrofit2.http.Path(value = "device-id", encoded = true) String deviceId);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceOwnershipEnrollmentsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceOwnershipEnrollmentsApi.java
new file mode 100644
index 000000000..35d69c66b
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceOwnershipEnrollmentsApi.java
@@ -0,0 +1,215 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import okhttp3.MultipartBody;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.BulkResponse;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.EnrollmentId;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.EnrollmentIdentities;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.EnrollmentIdentity;
+
+public interface DeviceOwnershipEnrollmentsApi {
+ /**
+ * Bulk upload. With bulk upload, you can upload a `CSV` file containing a number of enrollment IDs.
+ * **Example:** ``` curl -X POST \\ -H 'Authorization: Bearer <access_key>' \\ -F
+ * 'enrollment_identities=@/path/to/enrollments/enrollments.csv' \\
+ * https://api.us-east-1.mbedcloud.com/v3/device-enrollments-bulk-uploads ``` **To ensure your CSV
+ * file is valid:** 1. The first line of the file (header) is ignored. 1. Each line can contain comma-separated
+ * values, where the first value is the Enrollment ID. Everything after the first comma is ignored. 1. Valid
+ * enrollments begin with A followed by a - and 95 characters (examples below). 1. One enrollment ID per line. Empty
+ * lines are ignored. 1. Trailing comma at the end of the line is optional. 1. Lines are terminated with either a
+ * line feed \\n, a carriage return \\r, or both \\r\\n. 1. Leading and trailing whitespace characters (Unicode
+ * U+0000 - U+0020) are removed from the identity before validation. 1. Empty identities are ignored. 1. Valid
+ * enrollment identities may be enclosed within quotation marks. Whitespace inside quotation marks is not trimmed
+ * and will cause validation to fail. Empty quotation marks are also invalid. 1. Use UTF-8 encoding. **A valid
+ * enrollment file:** ``` \"Examples of valid identites, notes\"
+ * \"A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:44:71:93:23:22:15:43:23:12\",
+ * \"A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:48:44:71:22:15:43:23:12\"
+ * A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:48:44:71:22:15:43:23:12
+ * A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:24:44:71:22:15:43:23:12, This text is
+ * ignored. A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:60:25:48:44:71:22:15:43:23:12 ,
+ * Whitespace is trimmed before validation.
+ * \"A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:60:25:48:44:71:22:15:43:23:12\" ,
+ * Whitespace around quotation marks is also trimmed. ``` **A file containing invalid identities:**
+ * ```
+ * \"A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:44:71:93:23:22:15:43:23:12\",
+ * First line is ignored.
+ * A_4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:48:44:71:22:15:43:23:12, Invalid
+ * version identifier.
+ * A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:48:44:71:22:15:43:23:12, Too-short
+ * identity. \"\", Empty quotation marks are an invalid identity \"
+ * A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:44:71:93:23:22:15:43:23:12 \",
+ * Whitespace inside quotation marks is not trimmed, causing an error. ``` **An empty file:**
+ * ``` \"Examples of blank lines that are ignored\" ,, , This is also considered a blank
+ * line. ```
+ *
+ * @param enrollmentIdentities
+ * The `CSV` file containing the enrollment IDs. The maximum file size is 10 MB. (required)
+ * @return Call<BulkResponse>
+ */
+ @retrofit2.http.Multipart
+ @POST("v3/device-enrollments-bulk-uploads")
+ Call createBulkDeviceEnrollment(@retrofit2.http.Part() MultipartBody.Part enrollmentIdentities);
+
+ /**
+ * Create a single enrollment. When the device connects to the bootstrap server and provides the enrollment ID, it
+ * is assigned to your account. <br> **Example:** ``` curl -X POST \\ -H 'Authorization:
+ * Bearer <access_key>' \\ -H 'content-type: application/json' \\
+ * https://api.us-east-1.mbedcloud.com/v3/device-enrollments \\ -d '{\"enrollment_identity\":
+ * \"A-35:e7:72:8a:07:50:3b:3d:75:96:57:52:72:41:0d:78:cc:c6:e5:53:48:c6:65:58:5b:fa:af:4d:2d:73:95:c5\"}'
+ * ```
+ *
+ * @param enrollmentIdentity
+ * (required)
+ * @return Call<EnrollmentIdentity>
+ */
+ @POST("v3/device-enrollments")
+ Call createDeviceEnrollment(@retrofit2.http.Body EnrollmentId enrollmentIdentity);
+
+ /**
+ * Bulk delete. With bulk delete, you can upload a `CSV` file containing a number of enrollment IDs to
+ * delete. **Example:** ``` curl -X POST \\ -H 'Authorization: Bearer <access_key>' \\
+ * -F 'enrollment_identities=@/path/to/enrollments/enrollments.csv' \\
+ * https://api.us-east-1.mbedcloud.com/v3/device-enrollments-bulk-deletes ``` **To ensure your CSV
+ * file is valid:** 1. The first line of the file (header) is ignored. 1. Each line can contain comma-separated
+ * values, where the first value is the Enrollment ID. Everything after the first comma is ignored. 1. Valid
+ * enrollments begin with A followed by a - and 95 characters (examples below). 1. One enrollment ID per line. Empty
+ * lines are ignored. 1. Trailing comma at the end of the line is optional. 1. Lines are terminated with either a
+ * line feed \\n, a carriage return \\r, or both \\r\\n. 1. Leading and trailing whitespace characters (Unicode
+ * U+0000 - U+0020) are removed from the identity before validation. 1. Empty identities are ignored. 1. Valid
+ * enrollment identities may be enclosed within quotation marks. Whitespace inside quotation marks is not trimmed
+ * and will cause validation to fail. Empty quotation marks are also invalid. 1. Use UTF-8 encoding. **A valid
+ * enrollment file:** ``` \"Examples of valid identites, notes\"
+ * \"A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:44:71:93:23:22:15:43:23:12\",
+ * \"A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:48:44:71:22:15:43:23:12\"
+ * A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:48:44:71:22:15:43:23:12
+ * A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:24:44:71:22:15:43:23:12, This text is
+ * ignored, A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:60:25:48:44:71:22:15:43:23:12 ,
+ * Whitespace is trimmed before validation.
+ * \"A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:60:25:48:44:71:22:15:43:23:12\" ,
+ * Whitespace around quotation marks is also trimmed. ``` **A file containing invalid identities:**
+ * ```
+ * \"A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:44:71:93:23:22:15:43:23:12\",
+ * First line is ignored.
+ * A_4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:48:44:71:22:15:43:23:12, Invalid
+ * version identifier.
+ * A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:25:48:44:71:22:15:43:23, Too-short
+ * identity. \"\", Empty quotation marks are an invalid identity. \"
+ * A-4E:63:2D:AE:14:BC:D1:09:77:21:95:44:ED:34:06:57:1E:03:B1:EF:0E:F2:59:44:71:93:23:22:15:43:23:12 \",
+ * Whitespace inside quotation marks is not trimmed, causing an error. ``` **An empty file:**
+ * ``` \"Examples of blank lines that are ignored.\" ,, , This is also considered to a
+ * blank line. ```
+ *
+ * @param enrollmentIdentities
+ * The `CSV` file containing the enrollment IDs. The maximum file size is 10MB. (required)
+ * @return Call<BulkResponse>
+ */
+ @retrofit2.http.Multipart
+ @POST("v3/device-enrollments-bulk-deletes")
+ Call deleteBulkDeviceEnrollment(@retrofit2.http.Part() MultipartBody.Part enrollmentIdentities);
+
+ /**
+ * Delete an enrollment by ID. To free a device from your account, delete the enrollment claim. To bypass the device
+ * ownership, you need to delete the enrollment and factory reset the device. For more information, see
+ * [Transferring ownership using
+ * First-to-Claim](https://developer.pelion.com/docs/device-management/current/connecting/device-ownership-first-to-claim-by-enrollment-list.html).
+ * <br> **Example:** ``` curl -X DELETE \\ -H 'Authorization: Bearer
+ * <access_key>' \\ https://api.us-east-1.mbedcloud.com/v3/device-enrollments/{id} ```
+ *
+ * @param id
+ * Enrollment identity. (required)
+ * @return Call<Void>
+ */
+ @DELETE("v3/device-enrollments/{id}")
+ Call deleteDeviceEnrollment(@retrofit2.http.Path(value = "id", encoded = true) String id);
+
+ /**
+ * Get bulk upload entity. Provides information on bulk upload for the given ID, for example, bulk status and number
+ * of processed enrollment identities. Provides links to bulk upload reports as well. **Report file format:** The
+ * report files have a header line, and the values are separated by commas. Delimit lines with a line break (CRLF).
+ * Make sure the report file is compliant with IETF Informal CSV common format [RFC
+ * 4180](https://tools.ietf.org/html/rfc4180). An example of a full report file: ```
+ * \"entity__id\",\"entity__created_at\",\"error__code\",\"error__type\",\"error__message\",\"error__fields\"
+ * \"A-F9:AA:AA:AA:DE:31:C7:30:72:55:27:AE:8B:E1:1C:6F:42:7D:06:CF:FB:18:6F:59:48:29:B3:98:4B:76:8F:9E\",\"2018-09-07T12:10:58.428Z\",\"\",\"\",\"\",\"\"
+ * \"A-FF:AA:AA:AA:3B:43:EB:D7:C7:30:03:5F:C8:D0:15:91:70:C2:5D:4F:EB:24:E9:3A:BB:D8:3C:FE:20:EA:B1:72\",\"2018-09-07T12:10:58.428Z\",\"\",\"\",\"\",\"\"
+ * ``` An example of an error report file: ```
+ * \"entity__id\",\"error__code\",\"error__type\",\"error__message\",\"error__fields\"
+ * \"A-F9:AA:AA:AA:DE:31:C7:30:72:55:27:AE:8B:E1:1C:6F:42:7D:06:CF:FB:18:6F:59:48:29:B3:98:4B:76:8F:9E\",\"409\",\"duplicate\",\"Enrollment
+ * identity is already claimed in the mbed Cloud.\",\"\"
+ * \"A-FF:AA:AA:AA:3B:43:EB:D7:C7:30:03:5F:C8:D0:15:91:70:C2:5D:4F:EB:24:E9:3A:BB:D8:3C:FE:20:EA:B1:72\",\"409\",\"duplicate\",\"Enrollment
+ * identity is already claimed in the mbed Cloud.\",\"\" ``` **Example:**
+ * ``` curl -X GET \\ -H 'Authorization: Bearer <access_key>' \\
+ * https://api.us-east-1.mbedcloud.com/v3/device-enrollments-bulk-uploads/{id} ```
+ *
+ * @param id
+ * Bulk create task entity ID. (required)
+ * @return Call<BulkResponse>
+ */
+ @GET("v3/device-enrollments-bulk-uploads/{id}")
+ Call getBulkDeviceEnrollment(@retrofit2.http.Path(value = "id", encoded = true) String id);
+
+ /**
+ * Get bulk delete entity. Provides information on bulk delete for the given ID, for example, bulk status and the
+ * number of processed enrollment identities. Provides links to bulk delete reports as well. **Report file format:**
+ * The report files have a header line and the value are separated by commas. The lines are delimited by a line
+ * break (CRLF). Make sure the report file is compliant with IETF Informal CSV common format [RFC
+ * 4180](https://tools.ietf.org/html/rfc4180). An example of a full report file: ```
+ * \"entity__id\",\"entity__deleted_at\",\"error__code\",\"error__type\",\"error__message\",\"error__fields\"
+ * \"A-F9:AA:AA:AA:DE:31:C7:30:72:55:27:AE:8B:E1:1C:6F:42:7D:06:CF:FB:18:6F:59:48:29:B3:98:4B:76:8F:9E\",\"2018-09-07T12:10:58.428Z\",\"\",\"\",\"\",\"\"
+ * \"A-FF:AA:AA:AA:3B:43:EB:D7:C7:30:03:5F:C8:D0:15:91:70:C2:5D:4F:EB:24:E9:3A:BB:D8:3C:FE:20:EA:B1:72\",\"2018-09-07T12:10:58.428Z\",\"\",\"\",\"\",\"\"
+ * ``` An example of an error report file: ```
+ * \"entity__id\",\"error__code\",\"error__type\",\"error__message\",\"error__fields\"
+ * \"A-F9:AA:AA:AA:DE:31:C7:30:72:55:27:AE:8B:E1:1C:6F:42:7D:06:CF:FB:18:6F:59:48:29:B3:98:4B:76:8F:9E\",\"409\",\"duplicate\",\"Enrollment
+ * identity is already claimed in the mbed Cloud.\",\"\"
+ * \"A-FF:AA:AA:AA:3B:43:EB:D7:C7:30:03:5F:C8:D0:15:91:70:C2:5D:4F:EB:24:E9:3A:BB:D8:3C:FE:20:EA:B1:72\",\"409\",\"duplicate\",\"Enrollment
+ * identity is already claimed in the mbed Cloud.\",\"\" ``` **Example:**
+ * ``` curl -X GET \\ -H 'Authorization: Bearer <access_key>' \\
+ * https://api.us-east-1.mbedcloud.com/v3/device-enrollments-bulk-deletes/{id} ```
+ *
+ * @param id
+ * Bulk delete task entity ID. (required)
+ * @return Call<BulkResponse>
+ */
+ @GET("v3/device-enrollments-bulk-deletes/{id}")
+ Call getBulkDeviceEnrollmentDelete(@retrofit2.http.Path(value = "id", encoded = true) String id);
+
+ /**
+ * Get details of an single enrollment by ID. Check detailed enrollment info, for example, date of claim or
+ * expiration date. **Example:** ``` curl -X GET \\ -H 'Authorization: Bearer
+ * <access_key>' \\ https://api.us-east-1.mbedcloud.com/v3/device-enrollments/{id} ```
+ *
+ * @param id
+ * Enrollment identity. (required)
+ * @return Call<EnrollmentIdentity>
+ */
+ @GET("v3/device-enrollments/{id}")
+ Call getDeviceEnrollment(@retrofit2.http.Path(value = "id", encoded = true) String id);
+
+ /**
+ * Get a list of enrollments per account. Provides a list of pending and claimed enrollments. **Example:**
+ * ``` curl -X GET \\ -H 'Authorization: Bearer <access_key>' \\
+ * https://api.us-east-1.mbedcloud.com/v3/device-enrollments ``` With query parameters:
+ * ``` curl -X GET \\ -H 'Authorization: Bearer <access_key>' \\
+ * 'https://api.us-east-1.mbedcloud.com/v3/device-enrollments?limit=10' ```
+ *
+ * @param limit
+ * Number of results to return (2-1000). (optional)
+ * @param after
+ * Entity ID to fetch after. (optional)
+ * @param order
+ * ASC or DESC (optional, default to ASC)
+ * @param include
+ * Comma-separated additional data to return. Currently supported: total_count. (optional)
+ * @return Call<EnrollmentIdentities>
+ */
+ @GET("v3/device-enrollments")
+ Call getDeviceEnrollments(@retrofit2.http.Query("limit") Integer limit,
+ @retrofit2.http.Query("after") String after,
+ @retrofit2.http.Query("order") String order,
+ @retrofit2.http.Query("include") String include);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceSecurityDeviceCertificateRenewalsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceSecurityDeviceCertificateRenewalsApi.java
index 7f9a8758a..a99cb209e 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceSecurityDeviceCertificateRenewalsApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceSecurityDeviceCertificateRenewalsApi.java
@@ -13,7 +13,7 @@ public interface DeviceSecurityDeviceCertificateRenewalsApi {
/**
* Get a certificate enrollment by ID. Get a certificate enrollment by ID. **Example:** ``` curl -X
* GET https://api.us-east-1.mbedcloud.com/v3/certificate-enrollments/01612df56f3b0a580a010fc700000000 \\ -H
- * 'Authorization: Bearer <api_key>' ```
+ * 'Authorization: Bearer <access_key>' ```
*
* @param certificateEnrollmentId
* Certificate enrollment ID. (required)
@@ -27,9 +27,9 @@ public interface DeviceSecurityDeviceCertificateRenewalsApi {
/**
* Get certificate enrollments list. Get certificate enrollments list, optionally filtered. **Examples:**
* ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/certificate-enrollments \\ -H
- * 'Authorization: Bearer <api_key>' ``` ``` curl -X GET
+ * 'Authorization: Bearer <access_key>' ``` ``` curl -X GET
* https://api.us-east-1.mbedcloud.com/v3/certificate-enrollments?device_id__eq=01612df56f3b0a580a010fc700000000
- * \\ -H 'Authorization: Bearer <api_key>' ```
+ * \\ -H 'Authorization: Bearer <access_key>' ```
*
* @param deviceIdEq
* An optional filter for the device ID. (optional)
@@ -85,7 +85,7 @@ public interface DeviceSecurityDeviceCertificateRenewalsApi {
/**
* Request certificate renewal. Request a certificate renewal. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/devices/01612df56f3b0a580a010fc700000000/certificates/customer.dlms/renew
- * \\ -H 'Authorization: Bearer <api_key>' \\ -H 'content-length: 0' ```
+ * \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-length: 0' ```
*
* @param deviceId
* The device ID. (required)
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceUpdateCampaignsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceUpdateCampaignsApi.java
index 2532c38e1..3c79b67b8 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceUpdateCampaignsApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceUpdateCampaignsApi.java
@@ -21,8 +21,8 @@
public interface DeviceUpdateCampaignsApi {
/**
* Archive a campaign. Archive a campaign. <br> **Usage example:** ``` curl -X POST
- * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/archive \\ -H
- * 'Authorization: <valid access token>' ```
+ * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/016e83ddc649000000000001001000b8/archive \\ -H
+ * 'Authorization: Bearer <api_key>' ```
*
* @param campaignId
* The campaign ID. (required)
@@ -32,13 +32,13 @@ public interface DeviceUpdateCampaignsApi {
Call updateCampaignArchive(@retrofit2.http.Path(value = "campaign_id", encoded = true) String campaignId);
/**
- * Create a campaign Create an update campaign. <br> **Usage example:** ``` curl -X POST
- * https://api.us-east-1.mbedcloud.com/v3/update-campaigns \\ -H 'Authorization: <valid access token>'
- * \\ -H 'content-type: application/json;charset=UTF-8' \\ -d '{ \"campaign_strategy\":
+ * Create a campaign Create an update campaign. To include a filter for targeted devices, refer to the filter using
+ * `<filter_id>` in the message body. <br> **Usage example:** ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/v3/update-campaigns \\ -H 'Authorization: Bearer <api_key>' \\
+ * -H 'content-type: application/json;charset=UTF-8' \\ -d '{ \"campaign_strategy\":
* \"one-shot\", \"description\": \"Campaign is for ...\",
- * \"device_filter\": \"id__eq=123400000000000000000000000ae45\", \"name\":
- * \"campaign\", \"root_manifest_id\": \"5678000000000000000000000000bd98\", }'
- * ```
+ * \"device_filter\": \"<filter_id>\", \"name\": \"campaign\",
+ * \"root_manifest_id\": \"56780000000000a5b70000000000bd98\" }' ```
*
* @param campaign
* Update campaign. (required)
@@ -49,8 +49,8 @@ public interface DeviceUpdateCampaignsApi {
/**
* Delete a campaign Delete an update campaign. <br> **Usage example:** ``` curl -X DELETE
- * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012 \\ -H
- * 'Authorization: <valid access token>' ```
+ * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/1123457f9012ab567890120000789012 \\ -H
+ * 'Authorization: Bearer <api_key>' ```
*
* @param campaignId
* The campaign ID. (required)
@@ -62,8 +62,8 @@ public interface DeviceUpdateCampaignsApi {
/**
* Get a list of events grouped by summary Get a list of events grouped by summary. <br> **Usage example:**
* ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/statistics/12345678901234567890123456789012/event_types
- * \\ -H 'Authorization: <valid access token>' ```
+ * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/statistics/skipped/event_types
+ * \\ -H 'Authorization: Bearer <api_key>' ```
*
* @param campaignId
* The campaign ID. (required)
@@ -78,17 +78,38 @@ public interface DeviceUpdateCampaignsApi {
encoded = true) String summaryStatusId);
/**
- * Get an event type for a campaign Get the count for a specific event type; for example, succeeded, failed, or
+ * Get an event type for a campaign Get the count for a specific event type, for example, succeeded, failed or
* skipped. <br> **Usage example:** ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/statistics/12345678901234567890123456789012/event_types/12345678901234567890123456789012
- * \\ -H 'Authorization: <valid access token>' ```
+ * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/statistics/success/event_types/sys_112
+ * \\ -H 'Authorization: Bearer <api_key>' ```
*
* @param campaignId
* The campaign ID. (required)
* @param summaryStatusId
* The summary status. For example, fail. (required)
* @param eventTypeId
- * The event type parameter. For example, UPD4_FAIL_101. (required)
+ * The event type parameter. Event types are grouped into the four values of the summary_status, i.e.
+ * fail, success, info and skipped. success: SYS_112, UPD4_OK_M1, UPD1_OK_1, UPD4_OK_100, UPD2_OK_19,
+ * UPD2_OK_1, UPD2_OK_18 fail: UPD4_FAIL_508, UPD4_FAIL_217, UPD4_FAIL_305, UPD4_FAIL_405, UPD4_FAIL_511,
+ * UPD4_FAIL_220, UPD1_FAIL_6, UPD4_FAIL_302, UPD2_FAIL_11, UPD4_FAIL_219, SYS_103, UPD4_FAIL_407,
+ * UPD4_FAIL_224, SYS_111, UPD4_FAIL_210, UPD4_FAIL_306, UPD2_FAIL_14, UPD4_FAIL_221, UPD4_FAIL_315,
+ * UPD4_FAIL_403, UPD2_FAIL_12, UPD4_FAIL_207, UPD4_FAIL_215, UPD4_FAIL_504, UPD2_FAIL_3, UPD4_FAIL_103,
+ * UPD2_FAIL_16, UPD2_FAIL_6, UPD4_FAIL_101, UPD4_FAIL_202, UPD4_FAIL_313, UPD4_FAIL_209, UPD4_FAIL_301,
+ * UPD2_FAIL_4, SYS_123, UPD4_FAIL_314, UPD4_FAIL_205, UPD4_FAIL_212, UPD4_FAIL_311, UPD4_FAIL_304,
+ * UPD4_FAIL_223, UPD4_FAIL_226, UPD1_FAIL_2, UPD4_FAIL_203, UPD4_FAIL_507, UPD4_FAIL_402, UPD4_FAIL_204,
+ * UPD4_FAIL_510, UPD1_FAIL_7, UPD4_FAIL_218, UPD1_FAIL_8, UPD2_FAIL_5, UPD4_FAIL_201, UPD4_FAIL_213,
+ * UPD4_FAIL_400, UPD2_FAIL_17, UPD4_FAIL_310, UPD4_FAIL_206, UPD4_FAIL_102, UPD2_FAIL_7, UPD1_FAIL_9,
+ * UPD4_FAIL_22, UPD4_FAIL_502, UPD4_FAIL_211, UPD1_FAIL_4, UPD1_FAIL_3, UPD4_FAIL_409, UPD4_FAIL_408,
+ * UPD4_FAIL_200, SYS_104, UPD2_FAIL_10, UPD2_FAIL_15, UPD4_FAIL_216, UPD4_FAIL_214, UPD4_FAIL_308,
+ * UPD4_FAIL_401, UPD1_FAIL_5, UPD2_FAIL_13, UPD4_FAIL_208, UPD2_FAIL_2, UPD4_FAIL_312, UPD4_FAIL_509,
+ * UPD4_FAIL_303, UPD4_FAIL_512, UPD2_FAIL_9, UPD4_FAIL_316, UPD4_FAIL_506, SYS_101, UPD4_FAIL_309,
+ * UPD4_FAIL_307, UPD4_FAIL_404, UPD4_FAIL_503, UPD4_FAIL_225, UPD4_FAIL_300, UPD4_FAIL_500,
+ * UPD4_FAIL_505, UPD4_FAIL_406, UPD4_FAIL_222, UPD4_FAIL_501, UPD2_FAIL_8, SYS_124 info: UPD1_STATE_0,
+ * UPD2_REPORT_HASH, UPD1_REPORT_HASH, UPD2_STATE_5, UPD2_STATE_0, UPD2_STATE_4, UPD2_STATE_3, SYS_107,
+ * SYS_105, SYS_106, UPD1_REPORT_VERSION, UPD1_STATE_2, SYS_116, SYS_108, SYS_100, UPD2_STATE_8,
+ * UPD2_STATE_7, SYS_120, UPD2_STATE_1, SYS_113, UPD2_STATE_6, UPD2_REPORT_VERSION, SYS_115,
+ * UPD2_STATE_2, SYS_114, UPD1_STATE_3, UPD1_STATE_1, SYS_125 skipped: SYS_121, SYS_118, SYS_122,
+ * SYS_110, SYS_117 (required)
* @return Call<EventType>
*/
@GET("v3/update-campaigns/{campaign_id}/statistics/{summary_status_id}/event_types/{event_type_id}")
@@ -102,7 +123,7 @@ public interface DeviceUpdateCampaignsApi {
/**
* List all campaigns Get update campaigns for devices specified by a filter. <br> **Usage example:**
* ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/update-campaigns \\ -H 'Authorization:
- * <valid access token>' ```
+ * Bearer <api_key>' ```
*
* @param limit
* How many objects to retrieve in the page. The minimum limit is 2 and the maximum is 1000. Limit values
@@ -300,8 +321,8 @@ public interface DeviceUpdateCampaignsApi {
/**
* List all campaign device metadata Get metadata for all devices in a campaign. <br> **Usage example:**
* ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/campaign-device-metadata
- * \\ -H 'Authorization: <valid access token>' ```
+ * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/11234567f9012ab56790120000789012/campaign-device-metadata
+ * \\ -H 'Authorization: Bearer <api_key>' ```
*
* @param campaignId
* The campaign ID. (required)
@@ -327,8 +348,8 @@ public interface DeviceUpdateCampaignsApi {
/**
* Get a campaign device metadata Get update campaign metadata for a specific device. <br> **Usage example:**
* ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/campaign-device-metadata/12345678901234567890123456789012
- * \\ -H 'Authorization: <valid access token>' ```
+ * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/5d645eaec2315a89900000655cd94fa8/campaign-device-metadata/016e83ddc645000000000001001000f6
+ * \\ -H 'Authorization: Bearer <api_key>' ```
*
* @param campaignId
* The campaign ID. (required)
@@ -344,11 +365,11 @@ public interface DeviceUpdateCampaignsApi {
/**
* Get campaign metrics Get
- * [information](https://www.pelion.com/docs/device-management/current/updating-firmware/campaign-metrics-in-portal.html)
+ * [information](https://developer.pelion.com/docs/device-management/current/updating-firmware/campaign-metrics-in-portal.html)
* for a campaign based on **SUCCESS**, **FAIL**, or **SKIPPED** criteria for each device. <br> **Usage
* example:** ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/metrics \\ -H
- * 'Authorization: <valid access token>' ```
+ * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/1123467f9012ab567890120000789012/metrics \\ -H
+ * 'Authorization: Bearer <api_key>' ```
*
* @param campaignId
* The campaign ID. (required)
@@ -360,8 +381,8 @@ public interface DeviceUpdateCampaignsApi {
/**
* Get a campaign. Get an update campaign. <br> **Usage example:** ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012 \\ -H
- * 'Authorization: <valid access token>' ```
+ * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/11234567f9012ab56890120000789012 \\ -H
+ * 'Authorization: Bearer <api_key>' ```
*
* @param campaignId
* The campaign ID. (required)
@@ -373,8 +394,8 @@ public interface DeviceUpdateCampaignsApi {
/**
* Start a campaign. Start a campaign. <br> **Usage example:** ``` curl -X POST
- * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/start \\ -H
- * 'Authorization: <valid access token>' ```
+ * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/5d645eaec2315a8900002e655cd94fa8/start \\ -H
+ * 'Authorization: Bearer <api_key>' ```
*
* @param campaignId
* The campaign ID. (required)
@@ -386,8 +407,8 @@ public interface DeviceUpdateCampaignsApi {
/**
* Get statistics for a campaign Get a list of statistics for a campaign, including the number of devices reporting
* specific event codes. <br> **Usage example:** ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/statistics \\ -H
- * 'Authorization: <valid access token>' ```
+ * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/11234567f9012ab56780120000789012/statistics \\ -H
+ * 'Authorization: Bearer <api_key>' ```
*
* @param campaignId
* The campaign ID. (required)
@@ -400,8 +421,8 @@ public interface DeviceUpdateCampaignsApi {
/**
* Get a status summary Get the count of successfully updated, skipped, and failed devices. <br> **Usage
* example:** ``` curl
- * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/statistics/12345678901234567890123456789012
- * \\ -H 'Authorization: <valid access token>' ```
+ * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/statistics/fail \\ -H
+ * 'Authorization: Bearer <api_key>' ```
*
* @param campaignId
* The campaign ID. (required)
@@ -417,10 +438,10 @@ public interface DeviceUpdateCampaignsApi {
/**
* Stop a campaign. Stop a campaign. Stopping is a process that requires the campaign go through several
- * [phases](../updating-firmware/running-update-campaigns.html#stopping). <br> **Usage example:**
- * ``` curl -X POST
- * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012/stop \\ -H
- * 'Authorization: <valid access token>' ```
+ * [phases](https://developer.pelion.com/docs/device-management/current/updating-firmware/device-management-update-using-the-apis.html).
+ * <br> **Usage example:** ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/016e83ddc645000000000001001000b5/stop \\ -H
+ * 'Authorization: Bearer <api_key>' ```
*
* @param campaignId
* The campaign ID. (required)
@@ -431,11 +452,11 @@ public interface DeviceUpdateCampaignsApi {
/**
* Modify a campaign Modify an update campaign. <br> **Usage example:** ``` curl -X PUT
- * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/12345678901234567890123456789012 \\ -H
- * 'Authorization: <valid access token>' \\ d '{ \"description\": \"Campaign is for
- * ...\", \"device_filter\": \"id__eq=123400000000000000000000000ae45\",
- * \"name\": \"campaign\", \"root_manifest_id\":
- * \"5678000000000000000000000000bd98\", }' ```
+ * https://api.us-east-1.mbedcloud.com/v3/update-campaigns/1123007f9012ab567890120000789012 \\ -H
+ * 'Authorization: Bearer <api_key>' \\ d '{ \"description\": \"Campaign is for
+ * ...\", \"device_filter\": \"123400000000000000000000000ae45\", \"name\":
+ * \"campaign\", \"root_manifest_id\": \"5678000000000000000000000000bd98\", }'
+ * ```
*
* @param campaignId
* The campaign ID. (required)
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceUpdateFirmwareImagesApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceUpdateFirmwareImagesApi.java
index 995516632..36cc95d0a 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceUpdateFirmwareImagesApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceUpdateFirmwareImagesApi.java
@@ -18,14 +18,17 @@
public interface DeviceUpdateFirmwareImagesApi {
/**
- * Create an image Create a firmware image. <br> **Usage example:** ``` curl -X POST
- * https://api.us-east-1.mbedcloud.com/v3/firmware-images \\ -H 'Authorization: <valid access token>'
- * \\ -H 'Content-Type: multipart/form-data' \\ -F
+ * Create an image Create a firmware image. <BR/> **Note:** Only use this API for images smaller than 100 MB.
+ * For larger images, [upload in
+ * chunks](https://developer.pelion.com/docs/device-management/current/updating-firmware/uploading-a-large-firmware-image.html).
+ * <br> **Usage example:** ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/v3/firmware-images \\ -H 'Authorization: Bearer <api_key>' \\
+ * -H 'Content-Type: multipart/form-data' \\ -F
* 'datafile=@myimage.bin;type=application/octet-stream' -F 'description=bla bla' \\
* -F 'name=My Linux Image' ```
*
* @param datafile
- * The firmware image file to upload. (required)
+ * The firmware image file to upload. File name must not exceed 166 characters. (required)
* @param description
* The description of the firmware image. (optional)
* @param name
@@ -40,8 +43,8 @@ Call firmwareImageCreate(@retrofit2.http.Part() MultipartBody.Par
/**
* Delete an image Delete a firmware image. <br> **Usage example:** ``` curl -X DELETE
- * https://api.us-east-1.mbedcloud.com/v3/firmware-images/12345678901234567890123456789012 \\ -H 'Authorization:
- * <valid access token>' ```
+ * https://api.us-east-1.mbedcloud.com/v3/firmware-images/11234567f9012ab56790120000789012 \\ -H 'Authorization:
+ * Bearer <api_key>' ```
*
* @param imageId
* The firmware image ID. (required)
@@ -52,7 +55,7 @@ Call firmwareImageCreate(@retrofit2.http.Part() MultipartBody.Par
/**
* List all images List all firmware images. <br> **Usage example:** ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/firmware-images \\ -H 'Authorization: <valid access token>'
+ * https://api.us-east-1.mbedcloud.com/v3/firmware-images \\ -H 'Authorization: Bearer <api_key>'
* ```
*
* @param limit
@@ -65,7 +68,7 @@ Call firmwareImageCreate(@retrofit2.http.Part() MultipartBody.Par
* @param include
* A comma-separated list of data fields to return. Currently supported: total_count. (optional)
* @param filter
- * URL-encoded query string parameter to filter returned data `?filter={URL-encoded query
+ * URL-encoded query string parameter to filter returned data. `?filter={URL-encoded query
* string}` ###### Filterable fields: The table lists all the fields that can be filtered on with
* certain filters: <table> <thead> <tr> <th>Field</th> <th>= /
* __eq / __neq</th> <th>__in / __nin</th> <th>__lte / __gte</th>
@@ -207,8 +210,8 @@ Call firmwareImageCreate(@retrofit2.http.Part() MultipartBody.Par
/**
* Get an image. Retrieve a firmware image. <br> **Usage example:** ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/firmware-images/12345678901234567890123456789012 \\ -H 'Authorization:
- * <valid access token>' ```
+ * https://api.us-east-1.mbedcloud.com/v3/firmware-images/1123456f9012ab567890120000789012 \\ -H 'Authorization:
+ * Bearer <api_key>' ```
*
* @param imageId
* The firmware image ID (required)
@@ -219,13 +222,11 @@ Call firmwareImageCreate(@retrofit2.http.Part() MultipartBody.Par
/**
* Append a chunk to an upload job Append a chunk to an upload job. To finish a job, upload a zero-length chunk.
- * <br> **Usage example:** ``` curl -X POST
+ * <BR/> **Note:** Chunk size must be between 5MB and 100MB, the last chunk can be less than 5MB; the maximum
+ * number of chunks is limited to 10,000. <br> **Usage example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs/12345678901234567890123456789012/chunks \\ -H
- * 'Authorization: <valid access token>' \\ -H 'Content-MD5:
- * Q2h1Y2sgSW51ZwDIAXR5IQ==' \\ -H 'Content-Type: binary/octet-stream' \\ -H
- * 'Content-Length: 999' \\ -d '{
- * \"IGh0dHBzOi8vYXBpLnVzLWVhc3QtMS5tYmVkY2xvdWQuY29tLy92My9maXJtd2FyZS1pbWFnZXMvdXBsb2FkLWpvYnMve3VwbG9hZF9qb2JfaWR9W5rcw==\"
- * }' ```
+ * 'Authorization: Bearer <api_key>' \\ -H 'Content-MD5: Q2h1Y2sgSW51ZwDIAXR5IQ=='
+ * \\ -H 'Content-Type: binary/octet-stream' \\ --data-binary '@chunkfile.bin' ```
*
* @param contentMD5
* The base64-encoded binary digest of the body (chunk data). (required)
@@ -249,7 +250,7 @@ Call firmwareImageCreate(@retrofit2.http.Part() MultipartBody.Par
* List all metadata for uploaded chunks List all metadata for uploaded chunks. <br> **Usage example:**
* ``` curl -X GET
* https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs/12345678901234567890123456789012/chunks \\ -H
- * 'Authorization: <valid access token>' ```
+ * 'Authorization: Bearer <api_key>' ```
*
* @param uploadJobId
* The upload job ID. (required)
@@ -374,7 +375,7 @@ Call firmwareImageCreate(@retrofit2.http.Part() MultipartBody.Par
* Get metadata about a chunk Get metadata about a chunk. <br> **Usage example:** ``` curl -X
* GET
* https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs/12345678901234567890123456789012/chunks/12345678901234567890123456789012
- * \\ -H 'Authorization: <valid access token>' ```
+ * \\ -H 'Authorization: Bearer <api_key>' ```
*
* @param uploadJobId
* The upload job ID. (required)
@@ -389,10 +390,10 @@ Call firmwareImageCreate(@retrofit2.http.Part() MultipartBody.Par
/**
* Create a new upload job. Create a new upload job <br> **Usage example:** ``` curl -X POST
- * https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs \\ -H 'Authorization: <valid access
- * token>' \\ -H 'content-type: application/json;charset=UTF-8' \\ -d '{ \"name\":
- * \"New Linux update\", \"description\": \"New Linux update for my devices\" }'
- * ```
+ * https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs \\ -H 'Authorization: Bearer
+ * <api_key>' \\ -H 'content-type: application/json;charset=UTF-8' \\ -d '{
+ * \"name\": \"New Linux update\", \"description\": \"New Linux update for my
+ * devices\" }' ```
*
* @param uploadJob
* Upload job. (required)
@@ -404,7 +405,7 @@ Call firmwareImageCreate(@retrofit2.http.Part() MultipartBody.Par
/**
* Delete an upload job Delete an upload job. <br> **Usage example:** ``` curl -X DELETE
* https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs/12345678901234567890123456789012 \\ -H
- * 'Authorization: <valid access token>' ```
+ * 'Authorization: Bearer <api_key>' ```
*
* @param uploadJobId
* The upload job ID. (required)
@@ -415,8 +416,8 @@ Call firmwareImageCreate(@retrofit2.http.Part() MultipartBody.Par
/**
* Get all upload jobs Get all upload jobs. <br> **Usage example:** ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs \\ -H 'Authorization: <valid access
- * token>' ```
+ * https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs \\ -H 'Authorization: Bearer
+ * <api_key>' ```
*
* @param limit
* How many objects to retrieve in the page. The minimum limit is 2 and the maximum is 1000. Limit values
@@ -553,7 +554,7 @@ Call firmwareImageCreate(@retrofit2.http.Part() MultipartBody.Par
/**
* Retrieve information for an upload job Get an upload job. <br> **Usage example:** ``` curl
* -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs/12345678901234567890123456789012 \\ -H
- * 'Authorization: <valid access token>' ```
+ * 'Authorization: Bearer <api_key>' ```
*
* @param uploadJobId
* The upload job ID. (required)
@@ -565,9 +566,8 @@ Call firmwareImageCreate(@retrofit2.http.Part() MultipartBody.Par
/**
* Update an upload job Update an upload job. <br> **Usage example:** ``` curl -X PUT
* https://api.us-east-1.mbedcloud.com/v3/firmware-images/upload-jobs/12345678901234567890123456789012 \\ -H
- * 'Authorization: <valid access token>' \\ -d '{ \"name\": \"New Linux
- * update\", \"description\": \"New Linux update for my class XX devices\" }'
- * ```
+ * 'Authorization: Bearer <api_key>' \\ -d '{ \"name\": \"New Linux update\",
+ * \"description\": \"New Linux update for my class XX devices\" }' ```
*
* @param uploadJobId
* The upload job ID. (required)
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceUpdateFirmwareManifestsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceUpdateFirmwareManifestsApi.java
index 3c13d8760..e81881b80 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceUpdateFirmwareManifestsApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/DeviceUpdateFirmwareManifestsApi.java
@@ -15,32 +15,34 @@ public interface DeviceUpdateFirmwareManifestsApi {
/**
* Upload a manifest Upload a firmware manifest. The API enforces a maximum manifest size of 2KB. <br> **Usage
* example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/firmware-manifests \\ -H
- * 'Authorization: <valid access token>' \\ -H 'Content-Type: multipart/form-data' \\ -F
+ * 'Authorization: Bearer <api_key>' \\ -H 'Content-Type: multipart/form-data' \\ -F
* 'datafile=@myimage.bin;type=application/octet-stream' \\ -F 'description=bla bla'
* \\ -F 'key_table=@myKeyTable.proto;type=' \\ -F 'name=My Manifest'
* ```
*
* @param datafile
- * The manifest file to create. The API gateway enforces the account-specific file size. (required)
+ * The manifest file to create. The API gateway enforces the account-specific file size. File name must
+ * not exceed 100 characters. (required)
+ * @param name
+ * The name of the firmware manifest. (required)
* @param description
* The description of the firmware manifest. (optional)
* @param keyTable
- * The key table of pre-shared keys for devices. The table is generated by the manifest tool. (optional)
- * @param name
- * The name of the firmware manifest. (optional)
+ * The key table of pre-shared keys for devices. The table is generated by the manifest tool. File name
+ * must not exceed 100 characters. (optional)
* @return Call<FirmwareManifest>
*/
@retrofit2.http.Multipart
@POST("v3/firmware-manifests/")
Call firmwareManifestCreate(@retrofit2.http.Part() MultipartBody.Part datafile,
+ @retrofit2.http.Part("name") String name,
@retrofit2.http.Part("description") String description,
- @retrofit2.http.Part() MultipartBody.Part keyTable,
- @retrofit2.http.Part("name") String name);
+ @retrofit2.http.Part() MultipartBody.Part keyTable);
/**
* Delete a manifest Delete a firmware manifest. <br> **Usage example:** ``` curl -X DELETE
- * https://api.us-east-1.mbedcloud.com/v3/firmware-manifests/12345678901234567890123456789012 \\ -H
- * 'Authorization: <valid access token>' ```
+ * https://api.us-east-1.mbedcloud.com/v3/firmware-manifests/11234567f9012ab56780120000789012 \\ -H
+ * 'Authorization: Bearer <api_key>' ```
*
* @param manifestId
* The firmware manifest ID. (required)
@@ -51,8 +53,8 @@ Call firmwareManifestCreate(@retrofit2.http.Part() MultipartBo
/**
* List all firmware manifests. List all firmware manifests. <br> **Usage example:** ``` curl
- * -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-manifests \\ -H 'Authorization: <valid access
- * token>' ```
+ * -X GET https://api.us-east-1.mbedcloud.com/v3/firmware-manifests \\ -H 'Authorization: Bearer
+ * <api_key>' ```
*
* @param limit
* How many objects to retrieve in the page. The minimum limit is 2 and the maximum is 1000. Limit values
@@ -221,8 +223,8 @@ Call firmwareManifestCreate(@retrofit2.http.Part() MultipartBo
/**
* Get a manifest Retrieve a firmware manifest. <br> **Usage example:** ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/firmware-manifests/12345678901234567890123456789012 \\ -H
- * 'Authorization: <valid access token>' ```
+ * https://api.us-east-1.mbedcloud.com/v3/firmware-manifests/1123467f9012ab567890120000789012 \\ -H
+ * 'Authorization: Bearer <api_key>' ```
*
* @param manifestId
* The firmware manifest ID. (required)
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/EdgeProxyApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/EdgeProxyApi.java
new file mode 100644
index 000000000..7ec5200d0
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/EdgeProxyApi.java
@@ -0,0 +1,46 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+public interface EdgeProxyApi {
+ /**
+ * Establish a tunnel connection to connected devices. This WebSocket-based API for clients establishes connections
+ * to services on connected gateways. <br> Establish WebSocket connections to the edge-proxy service. After
+ * you establish a Websocket connection, the Edge proxy sends data between cloud- and gateway-based services.
+ * <br> All communication is byte-based.
+ *
+ * @param connection
+ * The websocket connection header. Must be 'Upgrade'. (required)
+ * @param upgrade
+ * The protocol upgrade header. Must be 'websocket'. (required)
+ * @param secWebSocketVersion
+ * WebSocket version of the protocol. Must be 13. (required)
+ * @param secWebSocketKey
+ * The value of this header field must be a nonce consisting of a randomly selected 16-byte value that
+ * has been base64-encoded (see this section from RFC6455 -
+ * https://tools.ietf.org/html/rfc6455#section-11.3.1). The nonce must be selected randomly for each
+ * connection. An example is \"dGhlIHNhbXBsZSBub25jZQ==\". (required)
+ * @param id
+ * The Device ID. (required)
+ * @param address
+ * The address of the TCP service listening on a specific port on the gateway. If a TCP service is
+ * listening on localhost with port 5000 and is ready to accept incoming traffic, the value of this
+ * parameter should be `localhost:5000`. (required)
+ * @param origin
+ * Originating host of the request. (optional)
+ * @return Call<Void>
+ */
+ @GET("v3preview1/devices/{id}/services/{address}/connection")
+ Call
+ communicateWithGatewayBasedServices(@retrofit2.http.Header("Connection") String connection,
+ @retrofit2.http.Header("Upgrade") String upgrade,
+ @retrofit2.http.Header("Sec-WebSocket-Version") Integer secWebSocketVersion,
+ @retrofit2.http.Header("Sec-WebSocket-Key") byte[] secWebSocketKey,
+ @retrofit2.http.Path(value = "id", encoded = true) String id,
+ @retrofit2.http.Path(value = "address", encoded = true) String address,
+ @retrofit2.http.Header("Origin") String origin);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/FactoryManufacturingStatisticsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/FactoryManufacturingStatisticsApi.java
new file mode 100644
index 000000000..470a18673
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/FactoryManufacturingStatisticsApi.java
@@ -0,0 +1,28 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import org.joda.time.DateTime;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.StatisticsReportListResponse;
+
+public interface FactoryManufacturingStatisticsApi {
+ /**
+ * Retrieve provisioning statistics for devices in your factories. Get manufacturing statistics report. **Example:**
+ * ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/manufacturing/statistics?start=2020-06-23T21:00:00.000Z&end=2020-07-01T20:59:59.999Z
+ * --header 'Authorization: Bearer <access_key>' ```
+ *
+ * @param start
+ * The start date and time for the report. (required)
+ * @param end
+ * The end date and time for the report. The default value is the current date-time. (optional)
+ * @return Call<StatisticsReportListResponse>
+ */
+ @GET("v3/manufacturing/statistics")
+ Call manufacturingStatisticsReport(@retrofit2.http.Query("start") DateTime start,
+ @retrofit2.http.Query("end") DateTime end);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/GatewayLogsPublicApiApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/GatewayLogsPublicApiApi.java
new file mode 100644
index 000000000..49a20049a
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/GatewayLogsPublicApiApi.java
@@ -0,0 +1,111 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import org.joda.time.DateTime;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.Log;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.LogsPage;
+
+public interface GatewayLogsPublicApiApi {
+ /**
+ * Retrieve a device log by ID. Retrieve a device log from a device by log ID. **Example usage:** ```
+ * curl -X GET \\ -H 'Authorization: Bearer <valid access token>' \\
+ * https://api.us-east-1.mbedcloud.com/v3/device-logs/(device_log_id) ```
+ *
+ * @param deviceLogId
+ * The ID of the device log. (required)
+ * @return Call<Log>
+ */
+ @GET("v3/device-logs/{device_log_id}")
+ Call
+ getDeviceLogBasedOnLogID(@retrofit2.http.Path(value = "device_log_id", encoded = true) String deviceLogId);
+
+ /**
+ * List all device logs based on filters List logs for all devices based on a combination of filters. **Example
+ * usage:** ``` curl -X GET \\ -H 'Authorization: Bearer <valid access token>' \\
+ * https://api.us-east-1.mbedcloud.com/v3/device-logs ```
+ *
+ * @param deviceIdIn
+ * The device ID for which to retrieve logs. (optional)
+ * @param limit
+ * Limit the number of returned results. The default value is 100. (optional, default to 100)
+ * @param after
+ * The entity ID to fetch after the given one. (optional)
+ * @param order
+ * Record order. Acceptable values: ASC, DESC. (optional, default to DESC)
+ * @param include
+ * Comma-separated additional data to return. Currently supported: total_count (optional)
+ * @param timestampLte
+ * RFC 3339 UTC timestamp range upper limit. (optional)
+ * @param timestampGte
+ * RFC 3339 UTC timestamp range lower limit. (optional)
+ * @param appNameEq
+ * Name of the application on a device that generated logs. (optional)
+ * @param typeEq
+ * Device log type filter. (optional)
+ * @param messageEq
+ * Device log message filter. (optional)
+ * @param levelGte
+ * Minimum severity level of logs to retrieve. (optional)
+ * @return Call<LogsPage>
+ */
+ @GET("v3/device-logs")
+ Call listGatewayDeviceLogs(@retrofit2.http.Query("device_id__in") String deviceIdIn,
+ @retrofit2.http.Query("limit") Integer limit,
+ @retrofit2.http.Query("after") String after,
+ @retrofit2.http.Query("order") String order,
+ @retrofit2.http.Query("include") String include,
+ @retrofit2.http.Query("timestamp__lte") DateTime timestampLte,
+ @retrofit2.http.Query("timestamp__gte") DateTime timestampGte,
+ @retrofit2.http.Query("app_name__eq") String appNameEq,
+ @retrofit2.http.Query("type__eq") String typeEq,
+ @retrofit2.http.Query("message__eq") String messageEq,
+ @retrofit2.http.Query("level__gte") String levelGte);
+
+ /**
+ * Return the logs for a specific device. Retrieve logs for a given device based on a combination of filters.
+ * **Example usage:** ``` curl -X GET \\ -H 'Authorization: Bearer <valid access
+ * token>' \\ https://api.us-east-1.mbedcloud.com/v3/devices/{device_id}/logs ```
+ *
+ * @param deviceId
+ * The id of the device (required)
+ * @param limit
+ * Limit the number of returned results. The default value is 100. (optional, default to 100)
+ * @param after
+ * The entity ID to fetch after the given one. (optional)
+ * @param order
+ * Record order. Acceptable values: ASC, DESC. (optional, default to DESC)
+ * @param include
+ * Comma-separated additional data to return. Currently supported: total_count (optional)
+ * @param timestampLte
+ * RFC 3339 UTC timestamp range upper limit. (optional)
+ * @param timestampGte
+ * RFC 3339 UTC timestamp range lower limit. (optional)
+ * @param appNameEq
+ * Name of the application on a device that generated logs. (optional)
+ * @param typeEq
+ * Device log type filter. (optional)
+ * @param messageEq
+ * Device log message filter. (optional)
+ * @param levelGte
+ * Minimum severity level of logs to retrieve. (optional)
+ * @return Call<LogsPage>
+ */
+ @GET("v3/devices/{device_id}/logs")
+ Call
+ listSingleGatewayDeviceLogs(@retrofit2.http.Path(value = "device_id", encoded = true) String deviceId,
+ @retrofit2.http.Query("limit") Integer limit,
+ @retrofit2.http.Query("after") String after,
+ @retrofit2.http.Query("order") String order,
+ @retrofit2.http.Query("include") String include,
+ @retrofit2.http.Query("timestamp__lte") DateTime timestampLte,
+ @retrofit2.http.Query("timestamp__gte") DateTime timestampGte,
+ @retrofit2.http.Query("app_name__eq") String appNameEq,
+ @retrofit2.http.Query("type__eq") String typeEq,
+ @retrofit2.http.Query("message__eq") String messageEq,
+ @retrofit2.http.Query("level__gte") String levelGte);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/GatewayTerminalPublicApiApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/GatewayTerminalPublicApiApi.java
new file mode 100644
index 000000000..dc14188e0
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/GatewayTerminalPublicApiApi.java
@@ -0,0 +1,77 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+public interface GatewayTerminalPublicApiApi {
+ /**
+ * Establish a console session This WebSocket-based API establishes a console session with a gateway device.
+ * <br> Use this endpoint to establish a WebSocket connection to the device console. Once the connection is in
+ * place, you can use the protocol below to exchange messages related to the console session. You must provide the
+ * api key as bearer token to authenticate the request. All messages sent between the server and the client are
+ * contained inside a message envelope. The envelope contains a type field describing what format the payload is in
+ * and how to interpret the message: ```json { \"type\": [string], \"payload\":
+ * [any], \"sessionID\": [string] } ``` <br> ## Message types and payload formats |
+ * Message Type | Payload Format | Description | |:------------- |:------------- |:------------- | | **resize** |
+ * `ResizePayload` | Can be sent by the client to the server to notify the device that the console window
+ * size has changed. | | **input** | `string` | Sent from the client to the server when keyboard input is
+ * provided to the console. stdin | | **output** | `string` | Sent from the server to the client when
+ * console output is produced. stdout + stderr | ### `ResizePayload` ```json {
+ * \"width\": [integer], // number of columns \"height\": [integer] // number of rows }
+ * ``` | Field Name | Format | Description | |:------------- |:------------- |:------------- | |
+ * width | integer | The width of the console window in columns. | | height | integer | The height of the console
+ * window in rows. | <br> ## Protocol Sequence Diagram The diagram shows how messages are passed between the
+ * client and the server after initiating a console session: ``` Client Pelion Cloud
+ * (/v3/devices/{id}/console) Device | | | | | | |-----------------[Input]------------------>| | |
+ * |-----------------[Input]------------------>| | |<----------------[Output]------------------|
+ * |<----------------[Output]------------------| | |-----------------[Input]------------------>| | |
+ * |-----------------[Input]------------------>| | |<----------------[Output]------------------|
+ * |<----------------[Output]------------------| | | | | |-----------------[Resize]----------------->| | |
+ * |-----------------[Resize]----------------->| | | | | |<----------------[Output]------------------|
+ * |<----------------[Output]------------------| | | | | | | | | | | Input is always forwarded from the client to
+ * the console session on the relevant device to be passed to the stdin stream. The client does not need to provide
+ * a session ID for input messages. Ouptut is forwarded from the device console session's stdout and stderr
+ * streams to the client. Resize messages are forwarded from the client to the console session on the device.
+ * ``` <br> If the console session is terminated by the device disconnecting, the WebSocket
+ * connection is closed. <br> All communication is text-based. <br> ## Errors and Close Codes - If you
+ * send binary data instead of text data over the websocket connection, the socket closes with code 1003. - If you
+ * send text data that is not valid JSON, the socket closes with code 1002 and error message 'Data could not be
+ * parsed as JSON'. - If you send text data that is valid JSON but does not follow a valid message schema, the
+ * socket closes with code 1002 and error message 'Object format invalid'. - If you try to establish a
+ * console session with a device that is not prepared for console, the socket closes with code 1011 and error
+ * message 'The device console is not working'. - If your client fails to respond to ping messages from the
+ * server with a matching pong message, the server disconnects the client, assuming the connection has timed out.
+ *
+ * @param id
+ * The id of the device (required)
+ * @param connection
+ * The websocket connection header. Must be 'Upgrade'. (required)
+ * @param upgrade
+ * The protocol upgrade header. Must be 'websocket'. (required)
+ * @param secWebSocketVersion
+ * WebSocket version. Must be 13. (required)
+ * @param secWebSocketKey
+ * The value of this header field must be a nonce consisting of a randomly selected 16-byte value that
+ * has been base64-encoded (see Section 4 of [RFC4648]). The nonce must be selected randomly for each
+ * connection. (required)
+ * @param secWebSocketProtocol
+ * Access key or user token must be present in the `Sec-WebSocket-Protocol` header **if
+ * Authorization header cannot be provided**:
+ * `Sec-WebSocket-Protocol:wss,pelion_ak_{access_key}`. (optional)
+ * @param origin
+ * Originating host of the request. (optional)
+ * @return Call<Void>
+ */
+ @GET("v3/devices/{id}/console")
+ Call
+ establishGatewayDeviceConsoleSession(@retrofit2.http.Path(value = "id", encoded = true) String id,
+ @retrofit2.http.Header("Connection") String connection,
+ @retrofit2.http.Header("Upgrade") String upgrade,
+ @retrofit2.http.Header("Sec-WebSocket-Version") Integer secWebSocketVersion,
+ @retrofit2.http.Header("Sec-WebSocket-Key") byte[] secWebSocketKey,
+ @retrofit2.http.Header("Sec-WebSocket-Protocol") String secWebSocketProtocol,
+ @retrofit2.http.Header("Origin") String origin);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/ManufacturingFactoryConfiguratorUtilityFcuApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/ManufacturingFactoryConfiguratorUtilityFcuApi.java
new file mode 100644
index 000000000..cf51d35b0
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/ManufacturingFactoryConfiguratorUtilityFcuApi.java
@@ -0,0 +1,44 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.ArchiveInfoResponse;
+
+public interface ManufacturingFactoryConfiguratorUtilityFcuApi {
+ /**
+ * Download the Factory Configurator Utility archive. Downloads the Factory Configurator Utility (FCU) archive .zip
+ * file for the account ID associated with the access token. <br> **Example:** <br> ```
+ * curl -X GET https://api.us-east-1.mbedcloud.com/downloads/fcu/factory_configurator_utility.zip \\ -H
+ * 'Authorization: Bearer <access_key>' ```
+ *
+ * @return Call<Void>
+ */
+ @GET("downloads/fcu/factory_configurator_utility.zip")
+ Call downloadFactoryTool();
+
+ /**
+ * Download information about the Factory Configurator Utility archive. Returns information about the Factory
+ * Configurator Utility (FCU) archive. <br> **Example:** <br> ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/downloads/fcu/inf \\ -H 'Authorization: Bearer <access_key>'
+ * ```
+ *
+ * @return Call<ArchiveInfoResponse>
+ */
+ @GET("downloads/fcu/info")
+ Call getFactoryToolInfo();
+
+ /**
+ * Download Factory Configurator Utility release notes. Downloads the Factory Configurator Utility (FCU) release
+ * notes. <br> **Example:** <br> ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/downloads/fcu/release_notes \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @return Call<Void>
+ */
+ @GET("downloads/fcu/release_notes")
+ Call getFactoryToolReleaseNotes();
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentityCertificateIssuerConfigurationsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentityCertificateIssuerConfigurationsApi.java
new file mode 100644
index 000000000..094485f32
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentityCertificateIssuerConfigurationsApi.java
@@ -0,0 +1,127 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.CertificateIssuerConfigListResponse;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.CertificateIssuerConfigRequest;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.CertificateIssuerConfigResponse;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.CreateCertificateIssuerConfig;
+
+public interface SecurityAndIdentityCertificateIssuerConfigurationsApi {
+ /**
+ * Create certificate issuer configuration. Configure the certificate issuer to use when creating device custom
+ * certificates. <br> **Example:** ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/v3/certificate-issuer-configurations \\ -H 'Authorization: Bearer
+ * <access_key>' \\ -H 'content-type: application/json;charset=UTF-8' \\ -d '{
+ * \"reference\": \"customer.dlms\", \"certificate_issuer_id\":
+ * \"01621a36719d507b9d48a91b00000000\" }' ```
+ *
+ * @param createCertificateIssuerConfig
+ * Certificate issuer configuration request. (required)
+ * @return Call<CertificateIssuerConfigResponse>
+ */
+ @POST("v3/certificate-issuer-configurations")
+ Call
+ createCertificateIssuerConfig(@retrofit2.http.Body CreateCertificateIssuerConfig createCertificateIssuerConfig);
+
+ /**
+ * Delete certificate issuer configuration. Delete certificate issuer configuration. You can only delete custom
+ * certificate configurations.
+ *
+ * @param certificateIssuerConfigurationId
+ * Certificate issuer ID configuration. (required)
+ * @return Call<Void>
+ */
+ @DELETE("v3/certificate-issuer-configurations/{certificate-issuer-configuration-id}")
+ Call
+ deleteCertificateIssuerConfigByID(@retrofit2.http.Path(value = "certificate-issuer-configuration-id",
+ encoded = true) String certificateIssuerConfigurationId);
+
+ /**
+ * Get certificate issuer configuration. Provides the configured certificate issuer used when creating device
+ * certificates for LwM2M.
+ *
+ * @return Call<CertificateIssuerConfigResponse>
+ */
+ @GET("v3/certificate-issuer-configurations/lwm2m")
+ Call getCertificateIssuerConfig();
+
+ /**
+ * Get certificate issuer configuration. Provides the configured certificate issuer.
+ *
+ * @param certificateIssuerConfigurationId
+ * Certificate issuer ID configuration. (required)
+ * @return Call<CertificateIssuerConfigResponse>
+ */
+ @GET("v3/certificate-issuer-configurations/{certificate-issuer-configuration-id}")
+ Call
+ getCertificateIssuerConfigByID(@retrofit2.http.Path(value = "certificate-issuer-configuration-id",
+ encoded = true) String certificateIssuerConfigurationId);
+
+ /**
+ * Get certificate issuer configurations. Get certificate issuer configurations, optionally filtered by reference.
+ * <br> **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/certificate-issuer-configurations \\ -H 'Authorization: Bearer
+ * <access_key>' \\ -H 'content-type: application/json;charset=UTF-8' \\ ```
+ * <br> ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/certificate-issuer-configurations?reference__eq=dlms \\ -H
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type:
+ * application/json;charset=UTF-8' \\ ``` **Note:** This endpoint does not implement
+ * pagination, and therefore ignores list control parameters such as `limit` or `after`.
+ *
+ * @param limit
+ * The number of results to return (2-1000). Values outside of this range are set to the closest limit.
+ * (optional)
+ * @param order
+ * Record order. Acceptable values: ASC, DESC. Default: ASC. (optional)
+ * @param after
+ * The ID of the item after which to retrieve the next page. (optional)
+ * @param include
+ * Comma-separated list of data fields to return. Currently supported: `total_count`.
+ * (optional)
+ * @param referenceEq
+ * The certificate name to which the certificate issuer configuration applies. (optional)
+ * @return Call<CertificateIssuerConfigListResponse>
+ */
+ @GET("v3/certificate-issuer-configurations")
+ Call
+ getCertificateIssuerConfigs(@retrofit2.http.Query("limit") Integer limit,
+ @retrofit2.http.Query("order") String order,
+ @retrofit2.http.Query("after") String after,
+ @retrofit2.http.Query("include") String include,
+ @retrofit2.http.Query("reference__eq") String referenceEq);
+
+ /**
+ * Update certificate issuer configuration. Configure the certificate issuer used when creating device certificates
+ * for LwM2M. <br> **Example:** ``` curl -X PUT
+ * https://api.us-east-1.mbedcloud.com/v3/certificate-issuer-configurations/lwm2m \\ -H 'Authorization: Bearer
+ * <access_key>' \\ -H 'content-type: application/json;charset=UTF-8' \\ -d '{
+ * \"certificate_issuer_id\": \"01621a36719d507b9d48a91b00000000\" }' ```
+ *
+ * @param certificateIssuerConfigRequest
+ * Certificate Issuer Configuration Request (required)
+ * @return Call<CertificateIssuerConfigResponse>
+ */
+ @PUT("v3/certificate-issuer-configurations/lwm2m")
+ Call
+ updateCertificateIssuerConfig(@retrofit2.http.Body CertificateIssuerConfigRequest certificateIssuerConfigRequest);
+
+ /**
+ * Update certificate issuer configuration. Update certificate issuer configuration.
+ *
+ * @param certificateIssuerConfigRequest
+ * Certificate issuer configuration request. (required)
+ * @param certificateIssuerConfigurationId
+ * Certificate issuer ID configuration. (required)
+ * @return Call<CertificateIssuerConfigResponse>
+ */
+ @PUT("v3/certificate-issuer-configurations/{certificate-issuer-configuration-id}")
+ Call
+ updateCertificateIssuerConfigByID(@retrofit2.http.Body CertificateIssuerConfigRequest certificateIssuerConfigRequest,
+ @retrofit2.http.Path(value = "certificate-issuer-configuration-id",
+ encoded = true) String certificateIssuerConfigurationId);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentityCertificateIssuersApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentityCertificateIssuersApi.java
new file mode 100644
index 000000000..3d19c1006
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentityCertificateIssuersApi.java
@@ -0,0 +1,124 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.CertificateIssuerInfo;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.CertificateIssuerInfoListResponse;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.CertificateIssuerRequest;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.CertificateIssuerUpdateRequest;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.CertificateIssuerVerifyResponse;
+
+public interface SecurityAndIdentityCertificateIssuersApi {
+ /**
+ * Create certificate issuer. Create a certificate issuer. <br> The maximum number of issuers is limited to 20
+ * per account. <br> You can create multiple certificate issuers of the same type, provided they have
+ * different names. This allows verification of the certificate issuer configuration before activation. <br>
+ * **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/certificate-issuers \\ -H
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type:
+ * application/json;charset=UTF-8' \\ -d '{ \"issuer_type\": \"GLOBAL_SIGN\",
+ * \"name\": \"GS Issuer\", \"description\": \"Sample GlobalSign certificate
+ * issuer\", \"issuer_attributes\": null, \"issuer_credentials\": { \"api_key\":
+ * \"e510e289e6cd8947\", \"api_secret\": \"a477a8393d17a55ecb2ba6a61f58feb84770b621\",
+ * \"client_certificate\": \"-----BEGIN
+ * CERTIFICATE-----MIIC7zCCAdegAwIBAgIJANTlU4x5S74VMA0GCSqGSIb3DQEBCwUAMA4xDDAKBgNVBAoMA0FybTAeFw0xODAzMTExMzE5MTFaFw0xOTAzMTExMzE5MTFaMA4xDDAKBgNVBAoMA0FybTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJWLStsVMJULZtxdieK9qocM4ymDXMaAusmd9TZLzBgznKQe/CW2yxyA8C8K5e6MmvMYGeKDd4Lkw/ezOj2OsUj2xzNIltUxpGi/GhsNYiN/khNJa/Y1SllLoihJAPm/xbMywOBRu/dM88PiJsNZccOk0I8DYvvyAs9wCTkbKLnfHygl98DCRqXw7nBCplU6F03qpUd/4BUtMtugyqt7yboGH+4YewnUh4Yh4QNOJIvE93Ob++eKjO3pIOYEhQmUxzOLaLNuWXlv2l1WuN281hUP4XBcV8mCzRQfTBBDYTWt+5BEWoLOUkXjW0Um6EAaN3usph1IKDEH6Ia5VHP4Pj0CAwEAAaNQME4wHQYDVR0OBBYEFLsfYZxFcQTjPJKYMjHI2In316fmMB8GA1UdIwQYMBaAFLsfYZxFcQTjPJKYMjHI2In316fmMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAFl08GFsIkkUs6M7QgCWmsnwP6PtD8V87wM1GAqQQlOOeztaeRR2TEOeYiKRZQugYszJ/FVfVp4ggqzepJMn6UZ42j5nmSJs+6t79i23QAzX1zNQ354lr/t7kt3fMdhuL3AP0oZGzdy+EnXXiWeAD22UwzvVmLt38ypJIl+pmTsx9jJy4PN7yoRgtP9k+50m3X6oDxVruehC/JPSeTvEhqyLW3fLcG6IoJMX3vIwfO9uXbFJumTowQeViNJJ9duWvD2KBXn/muOOBe97TPuvAms1gOtMmmPT9/jpo9b4+NsfFiAN6bMici81aIKZzLC+lLGOUmR2fFJyM5OsVLxKsko=-----END
+ * CERTIFICATE-----\", \"private_key\":\"-----BEGIN RSA PRIVATE KEY-----\\nProc-Type:
+ * 4,ENCRYPTED\\nDEK-Info:
+ * DES-EDE3-CBC,CCAC26A4133947CB\\n\\np3KJ4FI3wcz3I0MtiLkrznkjWFvprVmoNywySUGb5IqZViJZqCMEsyU9a9iDsSfP\\nZ07cg9GviV21WYIPSxZOQrpy1g1VWILzFnH+J6z8dSH4mxXh0PwdOzYgAeqkrIVM\\nJ7KRm6t222dZFjjXK3eEcLmBLGo29XwVJxKHx+l4++gU1LZmeHZR5M8fJ4jejUly\\n7sqzPlmRF0N3I4lwKVj+PfQTVz43QoCnpxOjuSEL4liBrc2agY2xH1O0PFyHimz9\\n3XM9HR/iuPHW0N2D+NPjXlWKacerupH9d4i9IYIagzB+HTgej8limdo03GmmxcZ6\\nYNa58n5yQSaqu0TPRU9DsrKeGjadHTlZQGdzfq1SWsROCnHLrXFKE2ozIG3+hxA5\\nujBF/QWpX5+inXUwDJhBxp8isHbPEnBEUUd6ZRzCTjvN0jaUti5B9yFhO2G6mbE8\\nCvhyzQK8oJqsjZXnlcpPf95LP+9XbcCDjLSIaWJstzXO9tPiv6+x1MVWmivtRHcC\\nSTzpx8jAGCiG6ejLqWB87ZXiZm7ujlCBheHSf5RHwNHhUvoP2JEYalDDRxjcDMSx\\n4uV42Np4yJlIQEDlGHcBlXoL7vEukFpuWgkYdpcZy/Ou9qz8mXrpLcu8C8MhLmSC\\nixGoR5iRhV7cxoHLyuCzj87eYEA73Xu238DQorSEEuiVFnLzQ2+PJMs4qoI14q/L\\notlBDz+Ko6DrU/EZROYmiqMkLKXR2sx9zNAJwPYRs6nSH08tZ3dwqzZbgtP3Wazi\\nhLWHt5/En7wQRA5a+/dDEHXSoLvvSQ9jvhclhWf+eCYuq2eH+g54oyJGRSY+8GV7\\nujhLxkzl/3OZdhZPWoz4U13KpbSTcNWu5Y7oGDoabw19UbvqmLf1PJkpDH/tQgzB\\nxYtsLBRUcofpYoeIiIxfAA4do5WilJc8xqrGhkE4WcHfY24HXAiOvsjbxV+BRprX\\n1jtgJpV/9nJESMap+8PxipGUFRGjB83/uwJaa6mLftEKflX8i4MZ+HnqraXERsqA\\nWRUcDHIWmFfpzIB3iNuxawVvPH8NdCSPmQ9qTb8Cozl0AuOK2E9S+ke8oiYQScWR\\nLdu+zhej7GjuQ9R+Ub+wPWqvOA5qLXejqnCexVScDUuN+z9JWM3N2FG1MwxhAzhP\\ndEfoQHoBn6uyOmrVGP6fosV3chqhPoec42KeOAm1xDvx692isaIy1jPgIyPxeqhm\\n2Tw4E+02R7dlP8Ljf7JzfLm4oKpWHWlcHeqg24x6lY/wXU1RBcWaTa0AQUwoGm2m\\nIQCPfIqOEv/QC2HpO7SVCYkl65KwR0oTd1AzYxdxEq3xHQbh69EL0FGZPVxVCPI+\\nhEAyifKy1/tm3l91Rf/kGpHY7nIQKCXH49tmFwix8gke2nZJmRgX7/zAdMOAKeKH\\nAaIl4nQtv14EbaasMgnn9qgaDYnWzaReEob2QlQ/WYlTor61+KFpGtcf9jAkgudT\\n2op+4CF7wT2+aTXdtkVWfmv++iB8GnlqZdxLvyG1cTYjjYHVFbMSWQnxzQqiE2ms\\nQgp+byjWCumpsWTMdTO+d9NkDOo80vDpaRxEgebmhJ0MbX+eFjBgVg==\\n-----END
+ * RSA PRIVATE KEY-----\", \"passphrase\": \"helloworld\" } }' ```
+ *
+ * @param certificateIssuerRequest
+ * Certificate issuer request. (required)
+ * @return Call<CertificateIssuerInfo>
+ */
+ @POST("v3/certificate-issuers")
+ Call
+ createCertificateIssuer(@retrofit2.http.Body CertificateIssuerRequest certificateIssuerRequest);
+
+ /**
+ * Delete certificate issuer. Delete a certificate issuer by ID. <br> **Example:** ``` curl -X
+ * DELETE https://api.us-east-1.mbedcloud.com/v3/certificate-issuers/0162155dc77d507b9d48a91b00000000 \\ -H
+ * 'Authorization: Bearer <access_key>' \\ ```
+ *
+ * @param certificateIssuerId
+ * Certificate issuer ID. An active certificate issuer cannot be deleted. (required)
+ * @return Call<Void>
+ */
+ @DELETE("v3/certificate-issuers/{certificate-issuer-id}")
+ Call deleteCertificateIssuer(@retrofit2.http.Path(value = "certificate-issuer-id",
+ encoded = true) String certificateIssuerId);
+
+ /**
+ * Get certificate issuer by ID.
+ *
+ * @param certificateIssuerId
+ * Certificate issuer ID. (required)
+ * @return Call<CertificateIssuerInfo>
+ */
+ @GET("v3/certificate-issuers/{certificate-issuer-id}")
+ Call getCertificateIssuer(@retrofit2.http.Path(value = "certificate-issuer-id",
+ encoded = true) String certificateIssuerId);
+
+ /**
+ * Get certificate issuers list. **Note:** This endpoint does not use pagination, and therefore ignores list control
+ * parameters such as `limit` or `after`.
+ *
+ * @param limit
+ * The number of results to return (2-1000). Values outside of this range are set to the closest limit.
+ * (optional)
+ * @param order
+ * Record order. Acceptable values: ASC, DESC. Default: ASC. (optional)
+ * @param after
+ * The ID of the item after which to retrieve the next page. (optional)
+ * @param include
+ * Comma-separated list of data fields to return. Currently supported: `total_count`.
+ * (optional)
+ * @return Call<CertificateIssuerInfoListResponse>
+ */
+ @GET("v3/certificate-issuers")
+ Call getCertificateIssuers(@retrofit2.http.Query("limit") Integer limit,
+ @retrofit2.http.Query("order") String order,
+ @retrofit2.http.Query("after") String after,
+ @retrofit2.http.Query("include") String include);
+
+ /**
+ * Update certificate issuer. Update a certificate issuer. <br> **Example:** ``` curl -X PUT
+ * https://api.us-east-1.mbedcloud.com/v3/certificate-issuers/01621560be51507b9d48a91b00000000 \\ -H
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type:
+ * application/json;charset=UTF-8' \\ -d '{ \"description\": \"Sample GlobalSign
+ * certificate issuer - updated.\", \"name\": \"GlobalSign Issuer\" }'
+ * ```
+ *
+ * @param certificateIssuerId
+ * Certificate issuer ID. (required)
+ * @param certificateIssuerUpdateRequest
+ * Certificate issuer update request. (required)
+ * @return Call<CertificateIssuerInfo>
+ */
+ @PUT("v3/certificate-issuers/{certificate-issuer-id}")
+ Call
+ updateCertificateIssuer(@retrofit2.http.Path(value = "certificate-issuer-id",
+ encoded = true) String certificateIssuerId,
+ @retrofit2.http.Body CertificateIssuerUpdateRequest certificateIssuerUpdateRequest);
+
+ /**
+ * Verify certificate issuer. Validates the certificate issuer by sending a signing request for a test certificate.
+ * This should be done before the configuration is made active. <br> **Note:** The API requests the 3rd party
+ * CA to sign a test certificate. For some 3rd party CAs, this operation may use the account quota. <br>
+ * **Example:** ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/v3/certificate-issuers/01621a36719d507b9d48a91b00000000/verify \\ -H
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type:
+ * application/json;charset=UTF-8' \\ ```
+ *
+ * @param certificateIssuerId
+ * Certificate issuer ID. (required)
+ * @return Call<CertificateIssuerVerifyResponse>
+ */
+ @POST("v3/certificate-issuers/{certificate-issuer-id}/verify")
+ Call
+ verifyCertificateIssuer(@retrofit2.http.Path(value = "certificate-issuer-id",
+ encoded = true) String certificateIssuerId);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentityCertificatesApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentityCertificatesApi.java
new file mode 100644
index 000000000..821d3c2db
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentityCertificatesApi.java
@@ -0,0 +1,131 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.TrustedCertificateReq;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.TrustedCertificateResp;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.TrustedCertificateRespList;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.TrustedCertificateUpdateReq;
+
+public interface SecurityAndIdentityCertificatesApi {
+ /**
+ * Upload a new trusted certificate. Upload new trusted certificates. <b>Note:</b> This endpoint is
+ * restricted to administrators. **Example:** ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/v3/trusted-certificates \\ -H 'Authorization: Bearer
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d {\"name\":
+ * \"myCert1\", \"description\": \"very important cert\", \"certificate\":
+ * \"certificate_data\", \"service\": \"lwm2m\"} ```
+ *
+ * @param body
+ * A trusted certificate object with attributes. (required)
+ * @return Call<TrustedCertificateResp>
+ */
+ @Headers({ "Content-Type:application/json" })
+ @POST("v3/trusted-certificates")
+ Call addCertificate(@retrofit2.http.Body TrustedCertificateReq body);
+
+ /**
+ * Delete a trusted certificate by ID. Delete a trusted certificate. **Example:** ``` curl -X DELETE
+ * https://api.us-east-1.mbedcloud.com/v3/trusted-certificates/{cert_id} \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @param certId
+ * The ID of the trusted certificate to delete. (required)
+ * @return Call<Void>
+ */
+ @DELETE("v3/trusted-certificates/{cert_id}")
+ Call deleteCertificate(@retrofit2.http.Path(value = "cert_id", encoded = true) String certId);
+
+ /**
+ * Get all trusted certificates. Retrieve an array of trusted certificates. **Example:** ``` curl -X
+ * GET https://api.us-east-1.mbedcloud.com/v3/trusted-certificates \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @param limit
+ * The number of results to return (2-1000). Default 50. (optional, default to 50)
+ * @param after
+ * The entity ID to retrieve after the given one. (optional)
+ * @param order
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
+ * @param include
+ * Comma-separated additional data to return. Currently supported: total_count. (optional)
+ * @param nameEq
+ * Filter for certificate name. (optional)
+ * @param serviceEq
+ * Service filter, either LwM2M or bootstrap. (optional)
+ * @param expireEq
+ * Expire filter in days. (optional)
+ * @param deviceExecutionModeEq
+ * Device execution mode: 1 for developer certificates or another natural integer value. (optional)
+ * @param deviceExecutionModeNeq
+ * Device execution mode `not_equals` filter. (optional)
+ * @param ownerEq
+ * Owner name filter. (optional)
+ * @param enrollmentModeEq
+ * Enrollment mode filter. (optional)
+ * @param statusEq
+ * Filter for certificate status. (optional)
+ * @param issuerLike
+ * Issuer filter. Finds all matches where the filter value is a case-insensitive substring of the result.
+ * Example: issuer__like=cn=iss matches CN=issuer. (optional)
+ * @param subjectLike
+ * Subject filter. Finds all matches where the filter value is a case-insensitive substring of the
+ * result. Example: subject__like=cn=su matches CN=subject. (optional)
+ * @param certificateFingerprintEq
+ * Filter for certificate fingerprint. (optional)
+ * @param validEq
+ * Filter for finding certificates by validity. True returns certificates which are not yet expired.
+ * False returns certificates which have expired. (optional)
+ * @return Call<TrustedCertificateRespList>
+ */
+ @GET("v3/trusted-certificates")
+ Call
+ getAllCertificates(@retrofit2.http.Query("limit") Integer limit, @retrofit2.http.Query("after") String after,
+ @retrofit2.http.Query("order") String order, @retrofit2.http.Query("include") String include,
+ @retrofit2.http.Query("name__eq") String nameEq,
+ @retrofit2.http.Query("service__eq") String serviceEq,
+ @retrofit2.http.Query("expire__eq") Integer expireEq,
+ @retrofit2.http.Query("device_execution_mode__eq") Integer deviceExecutionModeEq,
+ @retrofit2.http.Query("device_execution_mode__neq") Integer deviceExecutionModeNeq,
+ @retrofit2.http.Query("owner__eq") String ownerEq,
+ @retrofit2.http.Query("enrollment_mode__eq") Boolean enrollmentModeEq,
+ @retrofit2.http.Query("status__eq") String statusEq,
+ @retrofit2.http.Query("issuer__like") String issuerLike,
+ @retrofit2.http.Query("subject__like") String subjectLike,
+ @retrofit2.http.Query("certificate_fingerprint__eq") String certificateFingerprintEq,
+ @retrofit2.http.Query("valid__eq") Boolean validEq);
+
+ /**
+ * Get a trusted certificate. Retrieve a trusted certificate. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/trusted-certificates/{cert_id} \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @param certId
+ * The ID of the trusted certificate to retrieve. (required)
+ * @return Call<TrustedCertificateResp>
+ */
+ @GET("v3/trusted-certificates/{cert_id}")
+ Call getCertificate(@retrofit2.http.Path(value = "cert_id", encoded = true) String certId);
+
+ /**
+ * Update trusted certificate. Update existing trusted certificates. **Example:** ``` curl -X PUT
+ * https://api.us-east-1.mbedcloud.com/v3/trusted-certificates/{cert_id} \\ -H 'Authorization: Bearer
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d {\"description\":
+ * \"very important cert\"} ```
+ *
+ * @param certId
+ * The ID of the trusted certificate to update. (required)
+ * @param body
+ * A trusted certificate object with attributes. (required)
+ * @return Call<TrustedCertificateResp>
+ */
+ @Headers({ "Content-Type:application/json" })
+ @PUT("v3/trusted-certificates/{cert_id}")
+ Call
+ updateCertificate(@retrofit2.http.Path(value = "cert_id", encoded = true) String certId,
+ @retrofit2.http.Body TrustedCertificateUpdateReq body);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentityDeveloperClassCertificatesApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentityDeveloperClassCertificatesApi.java
new file mode 100644
index 000000000..dc762f687
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentityDeveloperClassCertificatesApi.java
@@ -0,0 +1,45 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.DeveloperCertificateRequestData;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.DeveloperCertificateResponseData;
+
+public interface SecurityAndIdentityDeveloperClassCertificatesApi {
+ /**
+ * Create a new developer certificate to connect to the bootstrap server. Create a developer certificate (a
+ * certificate that can be flashed to multiple devices to connect to the bootstrap server). **Note:** The number of
+ * developer certificates allowed per account is limited. Please see [Setting up a Certificate
+ * Authority](https://developer.pelion.com/docs/device-management/current/provisioning-process/integrating-with-a-third-party-ca.html).
+ * **Example:** ``` curl -X POST http://api.us-east-1.mbedcloud.com/v3/developer-certificates \\ -H
+ * \"Authorization: Bearer <access_key>\" \\ -H \"content-type: application/json\" \\ -d {
+ * \"name\": \"<certificate_name>\", \"description\":
+ * \"<certificate_description>\" } ```
+ *
+ * @param body
+ * (required)
+ * @return Call<DeveloperCertificateResponseData>
+ */
+ @POST("v3/developer-certificates")
+ Call
+ createDeveloperCertificate(@retrofit2.http.Body DeveloperCertificateRequestData body);
+
+ /**
+ * Fetch an existing developer certificate to connect to the bootstrap server. Return an existing developer
+ * certificate (a certificate that can be flashed to multiple devices to connect to bootstrap server). **Example:**
+ * ``` curl -X GET http://api.us-east-1.mbedcloud.com/v3/developer-certificates/THE_CERTIFICATE_ID \\
+ * -H \"Authorization: Bearer <access_key>\" ```
+ *
+ * @param developerCertificateId
+ * A unique identifier for the developer certificate. (required)
+ * @return Call<DeveloperCertificateResponseData>
+ */
+ @GET("v3/developer-certificates/{developerCertificateId}")
+ Call
+ getDeveloperCertificate(@retrofit2.http.Path(value = "developerCertificateId",
+ encoded = true) String developerCertificateId);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentityPreSharedKeysApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentityPreSharedKeysApi.java
new file mode 100644
index 000000000..88adf6591
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentityPreSharedKeysApi.java
@@ -0,0 +1,77 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.ListOfPreSharedKeysWithoutSecret;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.PreSharedKey;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.PreSharedKeyWithoutSecret;
+
+public interface SecurityAndIdentityPreSharedKeysApi {
+ /**
+ * Remove a PSK. Remove a PSK. **Example:** ``` curl -X DELETE
+ * https://api.us-east-1.mbedcloud.com/v2/device-shared-keys/my-endpoint-0001 \\ -H \"Authorization: Bearer
+ * <access_key>\" ```
+ *
+ * @param endpointName
+ * The unique endpoint identifier that this PSK applies to. [Reserved
+ * characters](https://en.wikipedia.org/wiki/Percent-encoding#Percent-encoding_reserved_characters) must
+ * be percent-encoded. (required)
+ * @return Call<Void>
+ */
+ @DELETE("v2/device-shared-keys/{endpoint_name}")
+ Call deletePreSharedKey(@retrofit2.http.Path(value = "endpoint_name", encoded = true) String endpointName);
+
+ /**
+ * Get a PSK. Check if a PSK for an endpoint exists or not. The response does not contain the secret itself.
+ * **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v2/device-shared-keys/my-endpoint-0001 \\ -H \"Authorization: Bearer
+ * <access_key>\" ```
+ *
+ * @param endpointName
+ * The unique endpoint identifier that this PSK applies to. [Reserved
+ * characters](https://en.wikipedia.org/wiki/Percent-encoding#Percent-encoding_reserved_characters) must
+ * be percent-encoded. (required)
+ * @return Call<PreSharedKeyWithoutSecret>
+ */
+ @GET("v2/device-shared-keys/{endpoint_name}")
+ Call
+ getPreSharedKey(@retrofit2.http.Path(value = "endpoint_name", encoded = true) String endpointName);
+
+ /**
+ * List PSKs. Retrieve pre-shared keys (PSKs) with pagination. Default page size of 50 entries. **Example:**
+ * ``` curl -X GET https://api.us-east-1.mbedcloud.com/v2/device-shared-keys \\ -H
+ * \"Authorization: Bearer <access_key>\" ```
+ *
+ * @param limit
+ * The number of objects to retrieve on a page (2-1000). Values outside the range are set to the closest
+ * limit. (optional, default to 50)
+ * @param after
+ * An offset token for fetching a specific page. Provided by the server. (optional)
+ * @return Call<ListOfPreSharedKeysWithoutSecret>
+ */
+ @Headers({ "Content-Type:application/json" })
+ @GET("v2/device-shared-keys")
+ Call listPreSharedKeys(@retrofit2.http.Query("limit") Integer limit,
+ @retrofit2.http.Query("after") String after);
+
+ /**
+ * Upload a PSK to Pelion Device Management. Upload a PSK for an endpoint to allow it to bootstrap. The existing key
+ * cannot be overwritten, but needs to be deleted first in the case of re-setting a PSK for an endpoint. **Note**:
+ * The PSK APIs are available only to accounts that have this feature enabled. **Example:** ``` curl
+ * -X POST https://api.us-east-1.mbedcloud.com/v2/device-shared-keys \\ -H \"Authorization: Bearer
+ * <access_key>\" \\ -H \"content-type: application/json\" \\ -d '{
+ * \"endpoint_name\": \"my-endpoint-0001\", \"secret_hex\":
+ * \"4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a\" }' ```
+ *
+ * @param body
+ * PSK to upload. (required)
+ * @return Call<Void>
+ */
+ @Headers({ "Content-Type:application/json" })
+ @POST("v2/device-shared-keys")
+ Call uploadPreSharedKey(@retrofit2.http.Body PreSharedKey body);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentitySecureDeviceAccessApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentitySecureDeviceAccessApi.java
new file mode 100644
index 000000000..6167a9b28
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentitySecureDeviceAccessApi.java
@@ -0,0 +1,105 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.CreateTrustAnchorRequest;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.CreateTrustAnchorResponse;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.GetTrustAnchorsResponse;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.TokenRequest;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.TokenResponse;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.UpdateTrustAnchorRequest;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.UpdateTrustAnchorResponse;
+
+public interface SecurityAndIdentitySecureDeviceAccessApi {
+ /**
+ * Get an access token to use with a device. Generate a signed CWT (CBOR Web Token). The SDA Android SDK uses this
+ * API to gain access to perform actions on the devices specified in the audience (aud). <br> Authorized for
+ * roles: Service, ServiceAdministrator <br> **Usage example:** ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/ace-auth/token \\ -H 'Authorization: <valid JWT>' \\ -H
+ * 'content-type: application/json;charset=UTF-8' \\ -d '{
+ * \"grant_type\":\"client_credentials\",
+ * \"aud\":[\"id:f90b1017e52f4c70ad92684e802c9249\",\"ep:dev1\"],
+ * \"scope\":\"turn-led-on\", \"cnf\":\"-----BEGIN PUBLIC
+ * KEY-----MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ...XwIDAQAB-----END PUBLIC KEY-----\" }' ```
+ *
+ * @param body
+ * Create access token request. (required)
+ * @return Call<TokenResponse>
+ */
+ @POST("/ace-auth/token")
+ Call createAceAuthToken(@retrofit2.http.Body TokenRequest body);
+
+ /**
+ * Create a new trust anchor for the account. Create a trust anchor key pair and return the public key and creation
+ * time. Each account can have one trust anchor only. This API fails if a trust anchor already exists for the
+ * account. <br> Authorized for roles: Service, ServiceAdministrator <br> **Usage example:**
+ * ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/trust-anchors \\ -H 'Authorization:
+ * <valid JWT>' \\ -H 'content-type: application/json;charset=UTF-8' \\ -d '{
+ * \"description\": \"Trust anchor for room lighting controller.\" }' ```
+ *
+ * @param body
+ * Request a new trust anchor. (required)
+ * @return Call<CreateTrustAnchorResponse>
+ */
+ @POST("/v3/trust-anchors")
+ Call createTrustAnchor(@retrofit2.http.Body CreateTrustAnchorRequest body);
+
+ /**
+ * Delete a trust anchor. Delete the specified trust anchor. Unrecoverable. <br> Authorized for roles:
+ * Service, ServiceAdministrator <br> **Usage example:** ``` curl -X DELETE
+ * https://api.us-east-1.mbedcloud.com/v3/trust-anchors/8e0a9494cc95b750ec6c81464eb06725 \\ -H 'Authorization:
+ * <valid JWT>' \\ ```
+ *
+ * @param trustAnchorId
+ * The id of the trust anchor to be deleted (required)
+ * @return Call<Void>
+ */
+ @DELETE("/v3/trust-anchors/{trust_anchor_id}")
+ Call deleteTrustAnchor(@retrofit2.http.Path(value = "trust_anchor_id", encoded = true) String trustAnchorId);
+
+ /**
+ * Get the account's trust anchor used to sign the access token. Get all trust anchors that match the account ID
+ * specified in the JWT. <br> Authorized for roles: Service, ServiceAdministrator <br> **Usage
+ * example:** ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/trust-anchors \\ -H
+ * 'Authorization: <valid JWT>' ```
+ *
+ * @param limit
+ * Indicates how many objects to retrieve in the page. The minimum limit is 2 and the maximum is 1000.
+ * Limit values outside of this range are set to the closest limit. (optional)
+ * @param order
+ * Indicates how to order the entries based on when they were created. `ASC` by default.
+ * (optional)
+ * @param after
+ * The ID of the item after which to retrieve the next page. (optional)
+ * @param include
+ * Comma-separated list of data fields to return. Currently supported: `total_count`.
+ * (optional)
+ * @return Call<GetTrustAnchorsResponse>
+ */
+ @GET("/v3/trust-anchors")
+ Call
+ getTrustAnchors(@retrofit2.http.Query("limit") Integer limit, @retrofit2.http.Query("order") String order,
+ @retrofit2.http.Query("after") String after, @retrofit2.http.Query("include") String include);
+
+ /**
+ * Update trust anchor attributes (description). Updates a trust anchor description attribute. <br> Authorized
+ * for roles: Service, ServiceAdministrator <br> **Usage example:** ``` curl -X PUT
+ * https://api.us-east-1.mbedcloud.com/v3/trust-anchors/8e0a9494cc95b750ec6c81464eb06725 \\ -H 'Authorization:
+ * <valid JWT>' \\ -H 'content-type: application/json;charset=UTF-8' \\ -d '{
+ * \"description\": \"Trust anchor for ambient light module\" }' ```
+ *
+ * @param trustAnchorId
+ * The id of the trust anchor to be updated (required)
+ * @param body
+ * Update trust anchor request. (required)
+ * @return Call<UpdateTrustAnchorResponse>
+ */
+ @PUT("/v3/trust-anchors/{trust_anchor_id}")
+ Call
+ updateTrustAnchor(@retrofit2.http.Path(value = "trust_anchor_id", encoded = true) String trustAnchorId,
+ @retrofit2.http.Body UpdateTrustAnchorRequest body);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentityServerCredentialsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentityServerCredentialsApi.java
new file mode 100644
index 000000000..60343ced5
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/SecurityAndIdentityServerCredentialsApi.java
@@ -0,0 +1,44 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AllServerCredentialsResponseData;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.ServerCredentialsResponseData;
+
+public interface SecurityAndIdentityServerCredentialsApi {
+ /**
+ * Fetch all (Bootstrap and LwM2M) server credentials. Return all (bootstrap and LwM2M) server credentials for
+ * client to connect to bootstrap or LwM2M server. **Example:** ``` curl -X GET
+ * http://api.us-east-1.mbedcloud.com/v3/server-credentials \\ -H \"Authorization: Bearer
+ * <access_key>\" ```
+ *
+ * @return Call<AllServerCredentialsResponseData>
+ */
+ @GET("v3/server-credentials")
+ Call getAllServerCredentials();
+
+ /**
+ * Fetch bootstrap server credentials. Return bootstrap server credentials for client to connect to bootstrap
+ * server. **Example:** ``` curl -X GET
+ * http://api.us-east-1.mbedcloud.com/v3/server-credentials/bootstrap \\ -H \"Authorization: Bearer
+ * <access_key>\" ```
+ *
+ * @return Call<ServerCredentialsResponseData>
+ */
+ @GET("v3/server-credentials/bootstrap")
+ Call getBootstrapServerCredentials();
+
+ /**
+ * Fetch LwM2M server credentials. Return LwM2M server credentials for client to connect to LwM2M server.
+ * **Example:** ``` curl -X GET http://api.us-east-1.mbedcloud.com/v3/server-credentials/lwm2m \\ -H
+ * \"Authorization: Bearer <access_key>\" ```
+ *
+ * @return Call<ServerCredentialsResponseData>
+ */
+ @GET("v3/server-credentials/lwm2m")
+ Call getL2M2MServerCredentials();
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsAccessKeysApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsAccessKeysApi.java
new file mode 100644
index 000000000..2b708fdbf
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsAccessKeysApi.java
@@ -0,0 +1,61 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AccessKey;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AccessKeyList;
+
+public interface TenantAccountsAccessKeysApi {
+ /**
+ * Get access key. Retrieve details of an access key. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/access-keys/{access_key_id} \\ -H
+ * 'Authorization: Bearer <access_key>' ```
+ *
+ * @param accountId
+ * The ID of the account to retrieve. (required)
+ * @param accessKeyId
+ * The ID of the access key to retrieve. (required)
+ * @return Call<AccessKey>
+ */
+ @GET("v3/accounts/{account_id}/access-keys/{access_key_id}")
+ Call
+ getAccountAccessKey(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Path(value = "access_key_id", encoded = true) String accessKeyId);
+
+ /**
+ * Get all access keys. Retrieve an array of access keys. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/access-keys \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @param accountId
+ * The ID of the account to retrieve. (required)
+ * @param limit
+ * The number of results to return (2-1000). Default 50. (optional, default to 50)
+ * @param after
+ * The entity ID to retrieve after the given one. (optional)
+ * @param order
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
+ * @param include
+ * Comma-separated additional data to return. Currently supported: total_count. (optional)
+ * @param statusEq
+ * Status filter. (optional)
+ * @param applicationIdEq
+ * Application filter. (optional)
+ * @return Call<AccessKeyList>
+ */
+ @GET("v3/accounts/{account_id}/access-keys")
+ Call
+ getAllAccountAccessKeys(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Query("limit") Integer limit,
+ @retrofit2.http.Query("after") String after,
+ @retrofit2.http.Query("order") String order,
+ @retrofit2.http.Query("include") String include,
+ @retrofit2.http.Query("status__eq") String statusEq,
+ @retrofit2.http.Query("application_id__eq") String applicationIdEq);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsAccountsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsAccountsApi.java
index ca8367ff1..ebbfeff31 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsAccountsApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsAccountsApi.java
@@ -6,15 +6,17 @@
import retrofit2.http.*;
import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AccountCreationReq;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AccountCreationResp;
import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AccountInfo;
import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AccountInfoList;
import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AccountUpdateRootReq;
public interface TenantAccountsAccountsApi {
/**
- * Create a new account. Create a new account. **Example:** ``` curl -X POST
- * https://api.us-east-1.mbedcloud.com/v3/accounts \\ -H 'Authorization: Bearer <api_key>' \\ -H
- * 'content-type: application/json' \\ -d '{\"display_name\": \"MyAccount1\",
+ * Create a new account. Create a new account. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X POST https://api.us-east-1.mbedcloud.com/v3/accounts \\
+ * -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d
+ * '{\"display_name\": \"MyAccount1\", \"aliases\": [ \"my-account\" ],
* \"admin_name\": \"accountAdmin1\", \"email\":
* \"example_admin@myaccount.info\", \"country\": \"United Kingdom\",
* \"end_market\": \"Smart City\", \"address_line1\": \"110 Fulbourn Rd\",
@@ -31,20 +33,21 @@ public interface TenantAccountsAccountsApi {
* its admin user has ENROLLING status. If the user already exists, its status is not modified. Email to
* finish enrollment or notify the existing user about the new account is sent to the
* `admin_email` defined in the request. </li></ul> (optional, default to create)
- * @return Call<AccountInfo>
+ * @return Call<AccountCreationResp>
*/
@Headers({ "Content-Type:application/json" })
@POST("v3/accounts")
- Call createAccount(@retrofit2.http.Body AccountCreationReq body,
- @retrofit2.http.Query("action") String action);
+ Call createAccount(@retrofit2.http.Body AccountCreationReq body,
+ @retrofit2.http.Query("action") String action);
/**
- * Get account info. Retrieve detailed information about an account. **Example:** ``` curl -X GET
+ * Get account information. Retrieve detailed information about an account. <b>Note:</b> This endpoint
+ * is restricted to administrators. **Example:** ``` curl -X GET
* https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id} \\ -H 'Authorization: Bearer
- * <api_key>' ```
+ * <access_key>' ```
*
* @param accountId
- * The ID of the account to fetch. (required)
+ * The ID of the account to retrieve. (required)
* @param include
* Comma-separated additional data to return. Currently supported: limits, policies, sub_accounts,
* history. (optional)
@@ -58,9 +61,10 @@ Call getAccountInfo(@retrofit2.http.Path(value = "account_id", enco
@retrofit2.http.Query("properties") String properties);
/**
- * Get all accounts. Returns an array of account objects, optionally filtered by status and tier level. **Example:**
- * ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts \\ -H 'Authorization: Bearer
- * <api_key>' ```
+ * Get all accounts. Retrieve an array of tenant accounts, optionally filtered by status and tier level.
+ * <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X
+ * GET https://api.us-east-1.mbedcloud.com/v3/accounts \\ -H 'Authorization: Bearer <access_key>'
+ * ```
*
* @param statusEq
* An optional filter for account status, ENROLLING, ACTIVE, RESTRICTED, or SUSPENDED. (optional)
@@ -80,7 +84,7 @@ Call getAccountInfo(@retrofit2.http.Path(value = "account_id", enco
* @param limit
* The number of results to return (2-1000). Default 1000. (optional, default to 1000)
* @param after
- * The entity ID to fetch after the given one. (optional)
+ * The entity ID to retrieve after the given one. (optional)
* @param order
* Record order. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
* @param include
@@ -107,9 +111,10 @@ Call getAccountInfo(@retrofit2.http.Path(value = "account_id", enco
@retrofit2.http.Query("properties") String properties);
/**
- * Update attributes of an existing account. Update an account. **Example:** ``` curl -X PUT
+ * Update attributes of an existing account. Update an account. <b>Note:</b> This endpoint is restricted
+ * to administrators. **Example:** ``` curl -X PUT
* https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id} \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"phone_number\":
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"phone_number\":
* \"12345678\"}' ```
*
* @param accountId
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsApiKeysApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsApiKeysApi.java
index cff65c35d..a389eda30 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsApiKeysApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsApiKeysApi.java
@@ -16,9 +16,10 @@
public interface TenantAccountsApiKeysApi {
/**
- * Add API key to a list of groups. Add API key to groups. **Example:** ``` curl -X POST
+ * Add API key to a list of groups. Add API key to groups. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/groups \\ -H
- * 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d
* '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
* ```
*
@@ -38,9 +39,10 @@ public interface TenantAccountsApiKeysApi {
@retrofit2.http.Body List body);
/**
- * Add API key to a list of groups. Add an API key to groups. **Example:** ``` curl -X POST
+ * Add API key to a list of groups. Add an API key to groups. <b>Note:</b> This endpoint is restricted
+ * to administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/groups/add \\ -H
- * 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d
* '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
* ```
*
@@ -61,9 +63,10 @@ public interface TenantAccountsApiKeysApi {
/**
* Create a new API key. Create a new API key. There is no default value for the owner ID, and it must be from the
- * same account where the new API key is created. **Example:** ``` curl -X POST
+ * same account where the new API key is created. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys \\ -H 'Authorization: Bearer
- * <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\":
+ * <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\":
* \"MyKey1\"}' ```
*
* @param accountId
@@ -79,9 +82,10 @@ public interface TenantAccountsApiKeysApi {
@retrofit2.http.Body ApiKeyInfoReq body);
/**
- * Delete the API key. Delete an API key. **Example:** ``` curl -X DELETE
+ * Delete the API key. Delete an API key. <b>Note:</b> This endpoint is restricted to administrators.
+ * **Example:** ``` curl -X DELETE
* https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id} \\ -H 'Authorization:
- * Bearer <api_key>' ```
+ * Bearer <access_key>' ```
*
* @param accountId
* Account ID. (required)
@@ -94,9 +98,10 @@ Call deleteAccountApiKey(@retrofit2.http.Path(value = "account_id", encode
@retrofit2.http.Path(value = "apikey_id", encoded = true) String apikeyId);
/**
- * Get API key details. Retrieve API key details. **Example:** ``` curl -X GET
+ * Get API key details. Retrieve details of an API key. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X GET
* https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id} \\ -H 'Authorization:
- * Bearer <api_key>' ```
+ * Bearer <access_key>' ```
*
* @param accountId
* Account ID. (required)
@@ -109,19 +114,19 @@ Call getAccountApiKey(@retrofit2.http.Path(value = "account_id",
@retrofit2.http.Path(value = "apikey_id", encoded = true) String apikeyId);
/**
- * Get all API keys. Retrieve API keys in an array, optionally filtered by the owner. **Example:**
- * ``` curl -X GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys \\ -H
- * 'Authorization: Bearer <api_key>' ```
+ * Get all API keys. Retrieve an array of API keys, optionally filtered by the owner. <b>Note:</b> This
+ * endpoint is restricted to administrators. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys \\ -H 'Authorization: Bearer
+ * <access_key>' ```
*
* @param accountId
* Account ID. (required)
* @param limit
* The number of results to return (2-1000). Default 50. (optional, default to 50)
* @param after
- * The entity ID to fetch after the given one. (optional)
+ * The entity ID to retrieve after the given one. (optional)
* @param order
- * Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. (optional, default to
- * ASC)
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
* @param include
* Comma-separated additional data to return. Currently supported: total_count. (optional)
* @param keyEq
@@ -140,10 +145,10 @@ Call getAccountApiKey(@retrofit2.http.Path(value = "account_id",
@retrofit2.http.Query("owner__eq") String ownerEq);
/**
- * Get groups associated with the API key. Retrieve groups associated with the API key. **Example:**
- * ``` curl -X GET
- * https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/groups \\ -H
- * 'Authorization: Bearer <api_key>' ```
+ * Get policy groups of an API key. Retrieve an array of policy groups associated with an API key.
+ * <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X
+ * GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/groups \\ -H
+ * 'Authorization: Bearer <access_key>' ```
*
* @param accountId
* Account ID. (required)
@@ -152,10 +157,9 @@ Call getAccountApiKey(@retrofit2.http.Path(value = "account_id",
* @param limit
* The number of results to return (2-1000). Default 50. (optional, default to 50)
* @param after
- * The entity ID to fetch after the given one. (optional)
+ * The entity ID to retrieve after the given one. (optional)
* @param order
- * Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. (optional, default to
- * ASC)
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
* @param include
* Comma-separated additional data to return. Currently supported: total_count. (optional)
* @return Call<GroupSummaryList>
@@ -170,9 +174,10 @@ Call getAccountApiKey(@retrofit2.http.Path(value = "account_id",
@retrofit2.http.Query("include") String include);
/**
- * Remove API key from groups. Remove API key from groups. **Example:** ``` curl -X DELETE
+ * Remove API key from groups. Remove API key from groups. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X DELETE
* https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/groups \\ -H
- * 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d
* '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
* ```
*
@@ -192,9 +197,10 @@ Call getAccountApiKey(@retrofit2.http.Path(value = "account_id",
@retrofit2.http.Body List body);
/**
- * Remove API key from groups. Remove an API key from groups. **Example:** ``` curl -X POST
+ * Remove API key from groups. Remove an API key from groups. <b>Note:</b> This endpoint is restricted
+ * to administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/groups/remove \\ -H
- * 'Authorization: Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d
* '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
* ```
*
@@ -214,9 +220,10 @@ Call getAccountApiKey(@retrofit2.http.Path(value = "account_id",
@retrofit2.http.Body GroupIdList body);
/**
- * Reset the secret key. Reset the secret key of the API key. **Example:** ``` curl -X POST
+ * Reset the secret key. Reset the secret key of the API key. <b>Note:</b> This endpoint is restricted
+ * to administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id}/reset-secret \\ -H
- * 'Authorization: Bearer <api_key>' ```
+ * 'Authorization: Bearer <access_key>' ```
*
* @param accountId
* Account ID. (required)
@@ -233,9 +240,10 @@ Call getAccountApiKey(@retrofit2.http.Path(value = "account_id",
@retrofit2.http.Body ApiKeyUpdateReq body);
/**
- * Update API key details. Update API key details. **Example:** ``` curl -X PUT
+ * Update API key details. Update API key details. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X PUT
* https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/api-keys/{apikey_id} \\ -H 'Authorization:
- * Bearer <api_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\":
+ * Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d '{\"name\":
* \"TestApiKey25\"}' ```
*
* @param accountId
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsApplicationsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsApplicationsApi.java
new file mode 100644
index 000000000..e32339abb
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsApplicationsApi.java
@@ -0,0 +1,326 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AccessKey;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AccessKeyList;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.ApiKeyInfoResp;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.Application;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.ApplicationList;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.GroupIdList;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.GroupSummaryList;
+
+public interface TenantAccountsApplicationsApi {
+ /**
+ * Add application to a list of groups. Add application to groups. <b>Note:</b> This endpoint is
+ * restricted to administrators. **Example:** ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id}/groups/add \\ -H
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d
+ * '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
+ * ```
+ *
+ * @param accountId
+ * The ID of the account to retrieve. (required)
+ * @param applicationId
+ * The ID of the application to add to the group. (required)
+ * @param body
+ * A list of IDs of the groups to update. (required)
+ * @return Call<Void>
+ */
+ @Headers({ "Content-Type:application/json" })
+ @POST("v3/accounts/{account_id}/applications/{application_id}/groups/add")
+ Call
+ addAccountApplicationToGroups(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Path(value = "application_id",
+ encoded = true) String applicationId,
+ @retrofit2.http.Body GroupIdList body);
+
+ /**
+ * Create a new application. Create a new application. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications -d '{\"name\":
+ * \"MyApplication1\"}' \\ -H 'Authorization: Bearer <access_key>' \\ -H
+ * 'content-type: application/json' ```
+ *
+ * @param accountId
+ * The ID of the account to retrieve. (required)
+ * @param body
+ * The details of the application to create. (required)
+ * @return Call<Application>
+ */
+ @Headers({ "Content-Type:application/json" })
+ @POST("v3/accounts/{account_id}/applications")
+ Call
+ createAccountApplication(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Body Application body);
+
+ /**
+ * Create a new application access key. Create a new access key for the application. <b>Note:</b> This
+ * endpoint is restricted to administrators. **Example:** ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id}/access-keys -d
+ * '{\"name\": \"MyKey1\"}' \\ -H 'Authorization: Bearer <access_key>' \\
+ * -H 'content-type: application/json' ```
+ *
+ * @param accountId
+ * The ID of the account to retrieve. (required)
+ * @param applicationId
+ * The ID of the application. (required)
+ * @param body
+ * The details of the access key to create. (required)
+ * @return Call<AccessKey>
+ */
+ @Headers({ "Content-Type:application/json" })
+ @POST("v3/accounts/{account_id}/applications/{application_id}/access-keys")
+ Call
+ createAccountApplicationAccessKey(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Path(value = "application_id",
+ encoded = true) String applicationId,
+ @retrofit2.http.Body AccessKey body);
+
+ /**
+ * Delete application. Delete the application. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X DELETE
+ * https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id} \\ -H
+ * 'Authorization: Bearer <access_key>' ```
+ *
+ * @param accountId
+ * The ID of the account to retrieve. (required)
+ * @param applicationId
+ * The ID of the application to delete. (required)
+ * @return Call<Void>
+ */
+ @DELETE("v3/accounts/{account_id}/applications/{application_id}")
+ Call
+ deleteAccountApplication(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Path(value = "application_id", encoded = true) String applicationId);
+
+ /**
+ * Delete access key associated with the application. Delete the access key associated with the application.
+ * <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X
+ * DELETE
+ * https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id}/access-keys/{access_key_id}
+ * \\ -H 'Authorization: Bearer <access_key>' ```
+ *
+ * @param accountId
+ * The ID of the account to retrieve. (required)
+ * @param applicationId
+ * The ID of the application. (required)
+ * @param accessKeyId
+ * The ID of the access key to delete. (required)
+ * @return Call<Void>
+ */
+ @DELETE("v3/accounts/{account_id}/applications/{application_id}/access-keys/{access_key_id}")
+ Call
+ deleteAccountApplicationAccessKey(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Path(value = "application_id",
+ encoded = true) String applicationId,
+ @retrofit2.http.Path(value = "access_key_id",
+ encoded = true) String accessKeyId);
+
+ /**
+ * Get application. Retrieve details of an application. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id} \\ -H
+ * 'Authorization: Bearer <access_key>' ```
+ *
+ * @param accountId
+ * The ID of the account to retrieve. (required)
+ * @param applicationId
+ * The ID of the application to retrieve. (required)
+ * @return Call<Application>
+ */
+ @GET("v3/accounts/{account_id}/applications/{application_id}")
+ Call
+ getAccountApplication(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Path(value = "application_id", encoded = true) String applicationId);
+
+ /**
+ * Get access key. Retrieve details of an access key associated with the application. <b>Note:</b> This
+ * endpoint is restricted to administrators. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id}/access-keys/{access_key_id}
+ * \\ -H 'Authorization: Bearer <access_key>' ```
+ *
+ * @param accountId
+ * The ID of the account to retrieve. (required)
+ * @param applicationId
+ * The ID of the application. (required)
+ * @param accessKeyId
+ * The ID of the access key to retrieve. (required)
+ * @return Call<AccessKey>
+ */
+ @GET("v3/accounts/{account_id}/applications/{application_id}/access-keys/{access_key_id}")
+ Call
+ getAccountApplicationAccessKey(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Path(value = "application_id",
+ encoded = true) String applicationId,
+ @retrofit2.http.Path(value = "access_key_id",
+ encoded = true) String accessKeyId);
+
+ /**
+ * Get all access keys associated with the application. Retrieve an array of access keys associated with the
+ * application. <b>Note:</b> This endpoint is restricted to administrators. **Example:**
+ * ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id}/access-keys \\ -H
+ * 'Authorization: Bearer <access_key>' ```
+ *
+ * @param accountId
+ * The ID of the account to retrieve. (required)
+ * @param applicationId
+ * The ID of the application. (required)
+ * @param limit
+ * The number of results to return (2-1000). Default 50. (optional, default to 50)
+ * @param after
+ * The entity ID to retrieve after the given one. (optional)
+ * @param order
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
+ * @param include
+ * Comma-separated additional data to return. Currently supported: total_count. (optional)
+ * @param statusEq
+ * Status filter. (optional)
+ * @return Call<AccessKeyList>
+ */
+ @GET("v3/accounts/{account_id}/applications/{application_id}/access-keys")
+ Call
+ getAllAccountApplicationAccessKeys(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Path(value = "application_id",
+ encoded = true) String applicationId,
+ @retrofit2.http.Query("limit") Integer limit,
+ @retrofit2.http.Query("after") String after,
+ @retrofit2.http.Query("order") String order,
+ @retrofit2.http.Query("include") String include,
+ @retrofit2.http.Query("status__eq") String statusEq);
+
+ /**
+ * Get all applications. Retrieve an array of applications. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X GET
+ * https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications \\ -H 'Authorization: Bearer
+ * <access_key>' ```
+ *
+ * @param accountId
+ * The ID of the account to retrieve. (required)
+ * @param limit
+ * The number of results to return (2-1000). Default 50. (optional, default to 50)
+ * @param after
+ * The entity ID to retrieve after the given one. (optional)
+ * @param order
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
+ * @param include
+ * Comma-separated additional data to return. Currently supported: total_count. (optional)
+ * @param statusEq
+ * Status filter. (optional)
+ * @return Call<ApplicationList>
+ */
+ @GET("v3/accounts/{account_id}/applications")
+ Call
+ getAllAccountApplications(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Query("limit") Integer limit,
+ @retrofit2.http.Query("after") String after,
+ @retrofit2.http.Query("order") String order,
+ @retrofit2.http.Query("include") String include,
+ @retrofit2.http.Query("status__eq") String statusEq);
+
+ /**
+ * Get policy groups of an application. Retrieve an array of policy groups associated with an application.
+ * <b>Note:</b> This endpoint is restricted to administrators. **Example:** ``` curl -X
+ * GET https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id}/groups \\ -H
+ * 'Authorization: Bearer <access_key>' ```
+ *
+ * @param accountId
+ * The ID of the account to retrieve. (required)
+ * @param applicationId
+ * The ID of the application. (required)
+ * @param limit
+ * The number of results to return (2-1000). Default 50. (optional, default to 50)
+ * @param after
+ * The entity ID to retrieve after the given one. (optional)
+ * @param order
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
+ * @param include
+ * Comma-separated additional data to return. Currently supported: total_count. (optional)
+ * @return Call<GroupSummaryList>
+ */
+ @GET("v3/accounts/{account_id}/applications/{application_id}/groups")
+ Call
+ getGroupsOfAccountApplication(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Path(value = "application_id",
+ encoded = true) String applicationId,
+ @retrofit2.http.Query("limit") Integer limit,
+ @retrofit2.http.Query("after") String after,
+ @retrofit2.http.Query("order") String order,
+ @retrofit2.http.Query("include") String include);
+
+ /**
+ * Remove application from groups. Remove application from groups. <b>Note:</b> This endpoint is
+ * restricted to administrators. **Example:** ``` curl -X POST
+ * https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id}/groups/remove \\ -H
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d
+ * '[\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]'
+ * ```
+ *
+ * @param accountId
+ * The ID of the account to retrieve. (required)
+ * @param applicationId
+ * The ID of the application to remove from the group. (required)
+ * @param body
+ * A list of IDs of the groups to update. (required)
+ * @return Call<Void>
+ */
+ @Headers({ "Content-Type:application/json" })
+ @POST("v3/accounts/{account_id}/applications/{application_id}/groups/remove")
+ Call
+ removeAccountApplicationFromGroups(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Path(value = "application_id",
+ encoded = true) String applicationId,
+ @retrofit2.http.Body GroupIdList body);
+
+ /**
+ * Update application details. Update application details. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** `curl -X PUT
+ * https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id} \\ -H
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d
+ * '{\"name\": \"TestApplication25\"}' ```
+ *
+ * @param accountId
+ * The ID of the account to retrieve. (required)
+ * @param applicationId
+ * The ID of the application to update. (required)
+ * @param body
+ * New applicationattributes to store. (required)
+ * @return Call<ApiKeyInfoResp>
+ */
+ @PUT("v3/accounts/{account_id}/applications/{application_id}")
+ Call
+ updateAccountApplication(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Path(value = "application_id", encoded = true) String applicationId,
+ @retrofit2.http.Body Application body);
+
+ /**
+ * Update access key details. Update access key details. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** `curl -X PUT
+ * https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/applications/{application_id}/access-keys/{access_key_id}
+ * \\ -H 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d
+ * '{\"name\": \"TestAccessKey\"}' ```
+ *
+ * @param accountId
+ * The ID of the account to retrieve. (required)
+ * @param applicationId
+ * The ID of the application. (required)
+ * @param accessKeyId
+ * The ID of the access key to update. (required)
+ * @param body
+ * New access key attributes to store. (required)
+ * @return Call<AccessKey>
+ */
+ @PUT("v3/accounts/{account_id}/applications/{application_id}/access-keys/{access_key_id}")
+ Call
+ updateAccountApplicationAccessKey(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Path(value = "application_id",
+ encoded = true) String applicationId,
+ @retrofit2.http.Path(value = "access_key_id",
+ encoded = true) String accessKeyId,
+ @retrofit2.http.Body AccessKey body);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsEmailNotificationLogsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsEmailNotificationLogsApi.java
index f6148ebc3..6c3a7eba0 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsEmailNotificationLogsApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsEmailNotificationLogsApi.java
@@ -5,21 +5,22 @@
import retrofit2.Call;
import retrofit2.http.*;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.NotificationEntry;
import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.NotificationEntryList;
public interface TenantAccountsEmailNotificationLogsApi {
/**
- * Get the notification events of an account. Retrieve notifications.
+ * Get email notifications. Retrieve an array of email notification logs. <b>Note:</b> This endpoint is
+ * restricted to administrators.
*
* @param accountId
* Account ID. (required)
* @param limit
* The number of results to return (2-1000). Default 50. (optional, default to 50)
* @param after
- * The entity ID to fetch after the given one. (optional)
+ * The entity ID to retrieve after the given one. (optional)
* @param order
- * Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. (optional, default to
- * ASC)
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
* @return Call<NotificationEntryList>
*/
@GET("v3/accounts/{account_id}/notifications")
@@ -29,4 +30,20 @@ public interface TenantAccountsEmailNotificationLogsApi {
@retrofit2.http.Query("after") String after,
@retrofit2.http.Query("order") String order);
+ /**
+ * Get an email notification. Retrieve an email notifications log entry. <b>Note:</b> This endpoint is
+ * restricted to administrators.
+ *
+ * @param accountId
+ * The ID of the account for which this notification should be retrieved. (required)
+ * @param notificationId
+ * The ID of the notification entry to be retrieved. (required)
+ * @return Call<NotificationEntry>
+ */
+ @GET("v3/accounts/{account_id}/notifications/{notification_id}")
+ Call
+ getAccountNofificationEntry(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Path(value = "notification_id",
+ encoded = true) String notificationId);
+
}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsEntitlementLimitationsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsEntitlementLimitationsApi.java
new file mode 100644
index 000000000..a6bdac1f3
--- /dev/null
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsEntitlementLimitationsApi.java
@@ -0,0 +1,44 @@
+package com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.api;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.CollectionFormats.*;
+
+import retrofit2.Call;
+import retrofit2.http.*;
+
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AccountLimitation;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.AccountLimitationList;
+
+public interface TenantAccountsEntitlementLimitationsApi {
+ /**
+ * Get an entitlement limitation. Retrieve an entitlement limitation. <b>Note:</b> This endpoint is
+ * restricted to administrators.
+ *
+ * @param accountId
+ * The ID of the account. (required)
+ * @param limitationId
+ * The ID of the limitation to be fetched. (required)
+ * @return Call<AccountLimitation>
+ */
+ @GET("v3/accounts/{account_id}/limitations/{limitation_id}")
+ Call
+ aggregatorGetAccountLimitation(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Path(value = "limitation_id",
+ encoded = true) String limitationId);
+
+ /**
+ * Get entitlement limitations. Retrieve an array of entitlement limitations. <b>Note:</b> This endpoint
+ * is restricted to administrators.
+ *
+ * @param accountId
+ * The ID of the account. (required)
+ * @param inheritedEq
+ * Filter for finding account limitations by inheritance. True returns also inherited limitations. False
+ * returns only non-inherited ones. (optional)
+ * @return Call<AccountLimitationList>
+ */
+ @GET("v3/accounts/{account_id}/limitations")
+ Call
+ aggregatorGetAccountLimitations(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Query("inherited__eq") String inheritedEq);
+
+}
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsIdentityProvidersApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsIdentityProvidersApi.java
index d954ec88b..c9197b41e 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsIdentityProvidersApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsIdentityProvidersApi.java
@@ -13,7 +13,8 @@
public interface TenantAccountsIdentityProvidersApi {
/**
- * Create a new identity provider. Create a new identity provider.
+ * Create a new identity provider. Create a new identity provider. <b>Note:</b> This endpoint is
+ * restricted to administrators.
*
* @param accountId
* Account ID. (required)
@@ -33,7 +34,8 @@ public interface TenantAccountsIdentityProvidersApi {
@retrofit2.http.Query("discovery") Boolean discovery);
/**
- * Delete an identity provider by ID. Delete an identity provider by ID.
+ * Delete an identity provider by ID. Delete an identity provider by ID. <b>Note:</b> This endpoint is
+ * restricted to administrators.
*
* @param accountId
* Account ID. (required)
@@ -48,7 +50,8 @@ public interface TenantAccountsIdentityProvidersApi {
encoded = true) String identityProviderId);
/**
- * Delete the service provider certificate. Delete a service provider certificate.
+ * Delete the service provider certificate. Delete a service provider certificate. <b>Note:</b> This
+ * endpoint is restricted to administrators.
*
* @param accountId
* Account ID. (required)
@@ -65,6 +68,7 @@ public interface TenantAccountsIdentityProvidersApi {
/**
* Generate a new service provider certificate. Generate a new service provider certificate.
+ * <b>Note:</b> This endpoint is restricted to administrators.
*
* @param accountId
* Account ID. (required)
@@ -83,7 +87,8 @@ public interface TenantAccountsIdentityProvidersApi {
@retrofit2.http.Body CertificateGenerationReq body);
/**
- * Retrieve identity provider by ID. Manage identity providers of a tenant account.
+ * Get an identity provider. Retrieve an identity provider. <b>Note:</b> This endpoint is restricted to
+ * administrators.
*
* @param accountId
* Account ID. (required)
@@ -98,17 +103,17 @@ public interface TenantAccountsIdentityProvidersApi {
encoded = true) String identityProviderId);
/**
- * Get all identity providers. Retrieve identity providers in an array.
+ * Get all identity providers. Retrieve an array of identity providers. <b>Note:</b> This endpoint is
+ * restricted to administrators.
*
* @param accountId
* The ID of the account. (required)
* @param limit
* The number of results to return (2-1000). Default 50. (optional, default to 50)
* @param after
- * The entity ID to fetch after the given one. (optional)
+ * The entity ID to retrieve after the given one. (optional)
* @param order
- * Record order based on creation time. Acceptable values: ASC, DESC. Default: ASC. (optional, default to
- * ASC)
+ * Record order based on creation. Acceptable values: ASC, DESC. Default: ASC. (optional, default to ASC)
* @param include
* Comma-separated additional data to return. Currently supported: total_count. (optional)
* @return Call<IdentityProviderList>
@@ -123,7 +128,8 @@ public interface TenantAccountsIdentityProvidersApi {
@retrofit2.http.Query("include") String include);
/**
- * Refreshes the OIDC signing keys. Refreshes an OIDC IdP's signing keys.
+ * Refresh the OIDC signing keys. Refresh an OIDC IdP's signing keys. <b>Note:</b> This endpoint is
+ * restricted to administrators.
*
* @param accountId
* The ID of the account to be managed. (required)
@@ -139,7 +145,8 @@ public interface TenantAccountsIdentityProvidersApi {
encoded = true) String identityProviderId);
/**
- * Update an existing identity provider. Update an existing identity provider.
+ * Update an existing identity provider. Update an existing identity provider. <b>Note:</b> This
+ * endpoint is restricted to administrators.
*
* @param accountId
* Account ID. (required)
diff --git a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsPolicyGroupsApi.java b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsPolicyGroupsApi.java
index 20d0118b2..48badffec 100644
--- a/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsPolicyGroupsApi.java
+++ b/backends/pelioncloud_devicemanagement/src/main/java/com/arm/mbed/cloud/sdk/lowlevel/pelionclouddevicemanagement/api/TenantAccountsPolicyGroupsApi.java
@@ -6,6 +6,7 @@
import retrofit2.http.*;
import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.ApiKeyInfoRespList;
+import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.ApplicationList;
import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.GroupCreationInfo;
import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.GroupSummary;
import com.arm.mbed.cloud.sdk.lowlevel.pelionclouddevicemanagement.model.GroupSummaryList;
@@ -15,9 +16,10 @@
public interface TenantAccountsPolicyGroupsApi {
/**
- * Add API keys to Account group. Add API keys to account groups. **Example:** ``` curl -X POST
+ * Add API keys to Account group. Add API keys to account groups. <b>Note:</b> This endpoint is
+ * restricted to administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/api-keys \\ -H
- * 'Authorization: Bearer <api_key>' ```
+ * 'Authorization: Bearer <access_key>' ```
*
* @param accountId
* The ID of the account. (required)
@@ -25,56 +27,84 @@ public interface TenantAccountsPolicyGroupsApi {
* The ID of the group to retrieve API keys for. (required)
* @param body
* A list of API keys to add to the group. (required)
- * @return Call<ApiKeyInfoRespList>
+ * @return Call<GroupSummary>
*/
@POST("v3/accounts/{account_id}/policy-groups/{group_id}/api-keys")
- Call
+ Call
addApiKeysToAccountGroup(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
@retrofit2.http.Path(value = "group_id", encoded = true) String groupId,
@retrofit2.http.Body SubjectList body);
/**
- * Add API keys to account group. Add API keys to account groups. **Example:** ``` curl -X POST
+ * Add API keys to account group. Add API keys to account groups. <b>Note:</b> This endpoint is
+ * restricted to administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/api-keys/add \\ -H
- * 'Authorization: Bearer <api_key>' ```
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d
+ * '{\"apikeys\":
+ * [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]}'
+ * ```
*
* @param accountId
* The ID of the account. (required)
* @param groupId
- * The ID of the group to retrieve API keys for. (required)
+ * The ID of the group to remove API keys from. (required)
* @param body
* A list of API keys to add to the group. (required)
- * @return Call<ApiKeyInfoRespList>
+ * @return Call<GroupSummary>
*/
@POST("v3/accounts/{account_id}/policy-groups/{group_id}/api-keys/add")
- Call
+ Call
addListedApiKeysToAccountGroup(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
@retrofit2.http.Path(value = "group_id", encoded = true) String groupId,
@retrofit2.http.Body SubjectList body);
/**
- * Add users to account group. Add users to account group. **Example:** ``` curl -X POST
+ * Add applications to account group. Add applications to account groups. **Example:** ``` curl -X
+ * POST https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/applications/add \\ -H
+ * 'Authorization: Bearer <access_key>' \\ -H 'content-type: application/json' \\ -d
+ * '{\"applications\":
+ * [\"0162056a9a1586f30242590700000000\",\"0117056a9a1586f30242590700000000\"]}'
+ * ```
+ *
+ * @param accountId
+ * The ID of the account. (required)
+ * @param groupId
+ * The ID of the group to add applications to. (required)
+ * @param body
+ * A list of applications to add to the group. (required)
+ * @return Call<GroupSummary>
+ */
+ @POST("v3/accounts/{account_id}/policy-groups/{group_id}/applications/add")
+ Call
+ addListedApplicationsToAccountGroup(@retrofit2.http.Path(value = "account_id", encoded = true) String accountId,
+ @retrofit2.http.Path(value = "group_id", encoded = true) String groupId,
+ @retrofit2.http.Body SubjectList body);
+
+ /**
+ * Add users to account group. Add users to account group. <b>Note:</b> This endpoint is restricted to
+ * administrators. **Example:** ``` curl -X POST
* https://api.us-east-1.mbedcloud.com/v3/accounts/{account_id}/policy-groups/{group_id}/users/add \\ -H
- * 'Authorization: Bearer <api_key>' ```
+ * 'Authorization: Bearer <access_key>' ```
*
* @param accountId
* The ID of the account. (required)
* @param groupId
- * The ID of the group to retrieve API keys for. (required)
+ * The ID of the group to retrieve users for. (required)
* @param body
- * A list of API keys to add to the group. (required)
- * @return Call<ApiKeyInfoRespList>
+ * A list of users to add to the group. (required)
+ * @return Call<GroupSummary>
*/
@POST("v3/accounts/{account_id}/policy-groups/{group_id}/users/add")
- Call
+ Call