Skip to content
  •  
  •  
  •  
15 changes: 7 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,17 +21,16 @@ Aspose.Email Cloud is a REST API for creating email applications that work with
- Email configuration discovery.
- Disposable email address detection.

## New features in version 20.9
## New features in version 20.10

Aspose.Email Cloud SDK 20.9.0 is based on a new v4.0 REST API.
Aspose.Email Cloud 20.10.0 comes with SDK improvements:

- All SDK functions are divided into groups (Email, Calendar, Contact, Client, Ai, Mapi, etc.).
- Unified file API provided for supported file types (Save, Get, Convert, AsFile, FromFile, AsMapi/AsDto).
- HierarchicalObject based API is removed.
- All models are stored in one folder/namespace.
- The request models are simplified.
- Typescript, PHP, Java SDKs now have model builders to simplify their initialization.
- All SDK methods now have code examples with parameters initialization.
- Some models now have initialization examples for all SDKs.
- SDK reference documentation with examples now available at url [docs.aspose.cloud/email/reference-api](https://docs.aspose.cloud/email/reference-api/)

See [Release notes](https://docs.aspose.cloud/email/aspose-email-cloud-20-9-release-notes/).
See [Release notes](https://docs.aspose.cloud/email/aspose-email-cloud-20-10-release-notes/).

## How to use the SDK?
The complete source code is available in the [GIT repository](https://github.com/aspose-email-cloud/aspose-email-cloud-python/tree/master/sdk/AsposeEmailCloudSdk).
Expand Down
5 changes: 0 additions & 5 deletions sdk/AsposeEmailCloudSdk/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -296,13 +296,8 @@
from AsposeEmailCloudSdk.models.storage_exists_request import StorageExistsRequest

# EmailCloud imports

from AsposeEmailCloudSdk.api.mapi_group import MapiGroup

from AsposeEmailCloudSdk.api.client_group import ClientGroup

from AsposeEmailCloudSdk.api.ai_group import AiGroup

from AsposeEmailCloudSdk.api.cloud_storage_group import CloudStorageGroup

from AsposeEmailCloudSdk.api.email_cloud import EmailCloud
7 changes: 0 additions & 7 deletions sdk/AsposeEmailCloudSdk/api/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,16 +45,9 @@
from AsposeEmailCloudSdk.api.mapi_message_api import MapiMessageApi
from AsposeEmailCloudSdk.api.storage_api import StorageApi



# EmailCloud imports

from AsposeEmailCloudSdk.api.mapi_group import MapiGroup

from AsposeEmailCloudSdk.api.client_group import ClientGroup

from AsposeEmailCloudSdk.api.ai_group import AiGroup

from AsposeEmailCloudSdk.api.cloud_storage_group import CloudStorageGroup

from AsposeEmailCloudSdk.api.email_cloud import EmailCloud
5 changes: 3 additions & 2 deletions sdk/AsposeEmailCloudSdk/api/ai_bcr_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ class AiBcrApi(ApiBase):

def __init__(self, api_client):
super(AiBcrApi, self).__init__(api_client)

def parse(self, request: AiBcrParseRequest) -> ContactList:
"""Parse images to vCard document models

Expand Down Expand Up @@ -96,7 +96,7 @@ def parse(self, request: AiBcrParseRequest) -> ContactList:
collection_formats, auth_settings)

return self._make_request(http_request_object, 'PUT', 'ContactList')

def parse_storage(self, request: AiBcrParseStorageRequest) -> StorageFileLocationList:
"""Parse images from storage to vCard files

Expand Down Expand Up @@ -125,3 +125,4 @@ def parse_storage(self, request: AiBcrParseStorageRequest) -> StorageFileLocatio
http_request_object = HttpRequest(path, None, None, header_params, None, body_params, None, None, auth_settings)

return self._make_request(http_request_object, 'PUT', 'StorageFileLocationList')

10 changes: 3 additions & 7 deletions sdk/AsposeEmailCloudSdk/api/ai_group.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@

# coding: utf-8
# ----------------------------------------------------------------------------
# <copyright company="Aspose" file="ai_group.py">
Expand Down Expand Up @@ -28,28 +27,25 @@
from __future__ import absolute_import
from AsposeEmailCloudSdk.api import *


class AiGroup(object):
"""
AI powered operations.
"""
def __init__(self, api_client):

self._bcr = AiBcrApi(api_client)

self._name = AiNameApi(api_client)



@property
def bcr(self) -> AiBcrApi:
"""
AI Business card recognition operations.
"""
return self._bcr

@property
def name(self) -> AiNameApi:
"""
AI Name operations.
"""
return self._name

23 changes: 12 additions & 11 deletions sdk/AsposeEmailCloudSdk/api/ai_name_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ class AiNameApi(ApiBase):

def __init__(self, api_client):
super(AiNameApi, self).__init__(api_client)

def complete(self, request: AiNameCompleteRequest) -> AiNameWeightedVariants:
"""The call proposes k most probable names for given starting characters.

Expand Down Expand Up @@ -112,7 +112,7 @@ def complete(self, request: AiNameCompleteRequest) -> AiNameWeightedVariants:
collection_formats, auth_settings)

return self._make_request(http_request_object, 'GET', 'AiNameWeightedVariants')

def expand(self, request: AiNameExpandRequest) -> AiNameWeightedVariants:
"""Expands a person&#39;s name into a list of possible alternatives using options for expanding instructions.

Expand Down Expand Up @@ -186,7 +186,7 @@ def expand(self, request: AiNameExpandRequest) -> AiNameWeightedVariants:
collection_formats, auth_settings)

return self._make_request(http_request_object, 'GET', 'AiNameWeightedVariants')

def expand_parsed(self, request: AiNameParsedRequest) -> AiNameWeightedVariants:
"""Expands a person&#39;s parsed name into a list of possible alternatives using options for expanding instructions.

Expand Down Expand Up @@ -215,7 +215,7 @@ def expand_parsed(self, request: AiNameParsedRequest) -> AiNameWeightedVariants:
http_request_object = HttpRequest(path, None, None, header_params, None, body_params, None, None, auth_settings)

return self._make_request(http_request_object, 'PUT', 'AiNameWeightedVariants')

def format(self, request: AiNameFormatRequest) -> AiNameFormatted:
"""Formats a person&#39;s name in correct case and name order using options for formatting instructions.

Expand Down Expand Up @@ -295,7 +295,7 @@ def format(self, request: AiNameFormatRequest) -> AiNameFormatted:
collection_formats, auth_settings)

return self._make_request(http_request_object, 'GET', 'AiNameFormatted')

def format_parsed(self, request: AiNameParsedRequest) -> AiNameFormatted:
"""Formats a person&#39;s parsed name in correct case and name order using options for formatting instructions.

Expand Down Expand Up @@ -324,7 +324,7 @@ def format_parsed(self, request: AiNameParsedRequest) -> AiNameFormatted:
http_request_object = HttpRequest(path, None, None, header_params, None, body_params, None, None, auth_settings)

return self._make_request(http_request_object, 'PUT', 'AiNameFormatted')

def genderize(self, request: AiNameGenderizeRequest) -> AiNameGenderHypothesisList:
"""Detect person&#39;s gender from name string.

Expand Down Expand Up @@ -398,7 +398,7 @@ def genderize(self, request: AiNameGenderizeRequest) -> AiNameGenderHypothesisLi
collection_formats, auth_settings)

return self._make_request(http_request_object, 'GET', 'AiNameGenderHypothesisList')

def genderize_parsed(self, request: AiNameParsedRequest) -> AiNameGenderHypothesisList:
"""Detect person&#39;s gender from parsed name.

Expand Down Expand Up @@ -427,7 +427,7 @@ def genderize_parsed(self, request: AiNameParsedRequest) -> AiNameGenderHypothes
http_request_object = HttpRequest(path, None, None, header_params, None, body_params, None, None, auth_settings)

return self._make_request(http_request_object, 'PUT', 'AiNameGenderHypothesisList')

def match(self, request: AiNameMatchRequest) -> AiNameMatchResult:
"""Compare people&#39;s names. Uses options for comparing instructions.

Expand Down Expand Up @@ -510,7 +510,7 @@ def match(self, request: AiNameMatchRequest) -> AiNameMatchResult:
collection_formats, auth_settings)

return self._make_request(http_request_object, 'GET', 'AiNameMatchResult')

def match_parsed(self, request: AiNameMatchParsedRequest) -> AiNameMatchResult:
"""Compare people&#39;s parsed names and attributes. Uses options for comparing instructions.

Expand Down Expand Up @@ -539,7 +539,7 @@ def match_parsed(self, request: AiNameMatchParsedRequest) -> AiNameMatchResult:
http_request_object = HttpRequest(path, None, None, header_params, None, body_params, None, None, auth_settings)

return self._make_request(http_request_object, 'PUT', 'AiNameMatchResult')

def parse(self, request: AiNameParseRequest) -> AiNameComponentList:
"""Parse name to components.

Expand Down Expand Up @@ -613,7 +613,7 @@ def parse(self, request: AiNameParseRequest) -> AiNameComponentList:
collection_formats, auth_settings)

return self._make_request(http_request_object, 'GET', 'AiNameComponentList')

def parse_email_address(self, request: AiNameParseEmailAddressRequest) -> AiNameExtractedList:
"""Parse person&#39;s name out of an email address.

Expand Down Expand Up @@ -687,3 +687,4 @@ def parse_email_address(self, request: AiNameParseEmailAddressRequest) -> AiName
collection_formats, auth_settings)

return self._make_request(http_request_object, 'GET', 'AiNameExtractedList')

21 changes: 11 additions & 10 deletions sdk/AsposeEmailCloudSdk/api/calendar_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ class CalendarApi(ApiBase):

def __init__(self, api_client):
super(CalendarApi, self).__init__(api_client)

def as_alternate(self, request: CalendarAsAlternateRequest) -> AlternateView:
"""Convert iCalendar to AlternateView

Expand Down Expand Up @@ -67,7 +67,7 @@ def as_alternate(self, request: CalendarAsAlternateRequest) -> AlternateView:
http_request_object = HttpRequest(path, None, None, header_params, None, body_params, None, None, auth_settings)

return self._make_request(http_request_object, 'PUT', 'AlternateView')

def as_file(self, request: CalendarAsFileRequest) -> str:
"""Converts calendar model to specified format and returns as file.

Expand Down Expand Up @@ -96,7 +96,7 @@ def as_file(self, request: CalendarAsFileRequest) -> str:
http_request_object = HttpRequest(path, None, None, header_params, None, body_params, None, None, auth_settings)

return self._make_request(http_request_object, 'PUT', 'file')

def as_mapi(self, calendar_dto: CalendarDto) -> MapiCalendarDto:
"""Converts CalendarDto to MapiCalendarDto.

Expand Down Expand Up @@ -125,7 +125,7 @@ def as_mapi(self, calendar_dto: CalendarDto) -> MapiCalendarDto:
http_request_object = HttpRequest(path, None, None, header_params, None, body_params, None, None, auth_settings)

return self._make_request(http_request_object, 'PUT', 'MapiCalendarDto')

def convert(self, request: CalendarConvertRequest) -> str:
"""Converts calendar document to specified format and returns as file.

Expand Down Expand Up @@ -174,7 +174,7 @@ def convert(self, request: CalendarConvertRequest) -> str:
collection_formats, auth_settings)

return self._make_request(http_request_object, 'PUT', 'file')

def from_file(self, request: CalendarFromFileRequest) -> CalendarDto:
"""Converts calendar document to a model representation.

Expand Down Expand Up @@ -214,7 +214,7 @@ def from_file(self, request: CalendarFromFileRequest) -> CalendarDto:
collection_formats, auth_settings)

return self._make_request(http_request_object, 'PUT', 'CalendarDto')

def get(self, request: CalendarGetRequest) -> CalendarDto:
"""Get calendar file from storage.

Expand Down Expand Up @@ -270,7 +270,7 @@ def get(self, request: CalendarGetRequest) -> CalendarDto:
collection_formats, auth_settings)

return self._make_request(http_request_object, 'GET', 'CalendarDto')

def get_as_alternate(self, request: CalendarGetAsAlternateRequest) -> AlternateView:
"""Get iCalendar from storage as AlternateView

Expand Down Expand Up @@ -341,7 +341,7 @@ def get_as_alternate(self, request: CalendarGetAsAlternateRequest) -> AlternateV
collection_formats, auth_settings)

return self._make_request(http_request_object, 'GET', 'AlternateView')

def get_as_file(self, request: CalendarGetAsFileRequest) -> str:
"""Converts calendar document from storage to specified format and returns as file.

Expand Down Expand Up @@ -406,7 +406,7 @@ def get_as_file(self, request: CalendarGetAsFileRequest) -> str:
collection_formats, auth_settings)

return self._make_request(http_request_object, 'GET', 'file')

def get_list(self, request: CalendarGetListRequest) -> CalendarStorageList:
"""Get iCalendar list from storage folder.

Expand Down Expand Up @@ -468,7 +468,7 @@ def get_list(self, request: CalendarGetListRequest) -> CalendarStorageList:
collection_formats, auth_settings)

return self._make_request(http_request_object, 'GET', 'CalendarStorageList')

def save(self, request: CalendarSaveRequest):
"""Save iCalendar

Expand Down Expand Up @@ -497,3 +497,4 @@ def save(self, request: CalendarSaveRequest):
http_request_object = HttpRequest(path, None, None, header_params, None, body_params, None, None, auth_settings)

return self._make_request(http_request_object, 'PUT', None)

9 changes: 5 additions & 4 deletions sdk/AsposeEmailCloudSdk/api/client_account_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ class ClientAccountApi(ApiBase):

def __init__(self, api_client):
super(ClientAccountApi, self).__init__(api_client)

def get(self, request: ClientAccountGetRequest) -> EmailClientAccount:
"""Get email client account from storage.

Expand Down Expand Up @@ -94,7 +94,7 @@ def get(self, request: ClientAccountGetRequest) -> EmailClientAccount:
collection_formats, auth_settings)

return self._make_request(http_request_object, 'GET', 'EmailClientAccount')

def get_multi(self, request: ClientAccountGetMultiRequest) -> EmailClientMultiAccount:
"""Get email client multi account file (*.multi.account). Will respond error if file extension is not \&quot;.multi.account\&quot;.

Expand Down Expand Up @@ -150,7 +150,7 @@ def get_multi(self, request: ClientAccountGetMultiRequest) -> EmailClientMultiAc
collection_formats, auth_settings)

return self._make_request(http_request_object, 'GET', 'EmailClientMultiAccount')

def save(self, request: ClientAccountSaveRequest):
"""Create/update email client account file (*.account) with credentials

Expand Down Expand Up @@ -179,7 +179,7 @@ def save(self, request: ClientAccountSaveRequest):
http_request_object = HttpRequest(path, None, None, header_params, None, body_params, None, None, auth_settings)

return self._make_request(http_request_object, 'PUT', None)

def save_multi(self, request: ClientAccountSaveMultiRequest):
"""Create email client multi account file (*.multi.account). Will respond error if file extension is not \&quot;.multi.account\&quot;.

Expand Down Expand Up @@ -208,3 +208,4 @@ def save_multi(self, request: ClientAccountSaveMultiRequest):
http_request_object = HttpRequest(path, None, None, header_params, None, body_params, None, None, auth_settings)

return self._make_request(http_request_object, 'PUT', None)

7 changes: 4 additions & 3 deletions sdk/AsposeEmailCloudSdk/api/client_folder_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ class ClientFolderApi(ApiBase):

def __init__(self, api_client):
super(ClientFolderApi, self).__init__(api_client)

def create(self, request: ClientFolderCreateRequest):
"""Create new folder in email account

Expand Down Expand Up @@ -67,7 +67,7 @@ def create(self, request: ClientFolderCreateRequest):
http_request_object = HttpRequest(path, None, None, header_params, None, body_params, None, None, auth_settings)

return self._make_request(http_request_object, 'PUT', None)

def delete(self, request: ClientFolderDeleteRequest):
"""Delete a folder in email account

Expand Down Expand Up @@ -96,7 +96,7 @@ def delete(self, request: ClientFolderDeleteRequest):
http_request_object = HttpRequest(path, None, None, header_params, None, body_params, None, None, auth_settings)

return self._make_request(http_request_object, 'DELETE', None)

def get_list(self, request: ClientFolderGetListRequest) -> MailServerFolderList:
"""Get folders list in email account

Expand Down Expand Up @@ -158,3 +158,4 @@ def get_list(self, request: ClientFolderGetListRequest) -> MailServerFolderList:
collection_formats, auth_settings)

return self._make_request(http_request_object, 'GET', 'MailServerFolderList')

Loading