Skip to content

Commit b04c0aa

Browse files
committed
Version 1.4.102
1 parent 9a0ebf6 commit b04c0aa

363 files changed

Lines changed: 3334 additions & 352 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎abacusai/__init__.py‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@
5656
from .constants_autocomplete_response import ConstantsAutocompleteResponse
5757
from .conversation_and_project_search_results import ConversationAndProjectSearchResults
5858
from .cowork_desktop_folder import CoworkDesktopFolder
59+
from .cowork_dispatch_attachment import CoworkDispatchAttachment
5960
from .cowork_dispatch_message import CoworkDispatchMessage
6061
from .cowork_paired_desktop_folders import CoworkPairedDesktopFolders
6162
from .cowork_pairing_challenge import CoworkPairingChallenge
@@ -181,6 +182,7 @@
181182
from .mcp_server_connection import McpServerConnection
182183
from .mcp_server_query_result import McpServerQueryResult
183184
from .media_artifact import MediaArtifact
185+
from .media_project import MediaProject
184186
from .memory_options import MemoryOptions
185187
from .messaging_connector_response import MessagingConnectorResponse
186188
from .mobile_app_build_status import MobileAppBuildStatus
@@ -314,4 +316,4 @@
314316
from .workflow_node_template import WorkflowNodeTemplate
315317

316318

317-
__version__ = "1.4.101"
319+
__version__ = "1.4.102"

‎abacusai/api_class/dataset_application_connector.py‎

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -340,6 +340,32 @@ def __post_init__(self):
340340
self.object_type = normalized_object_type
341341

342342

343+
@dataclasses.dataclass
344+
class MondayDatasetConfig(ApplicationConnectorDatasetConfig):
345+
"""
346+
Dataset config for Monday.com Application Connector
347+
348+
Args:
349+
object_type (str): The Monday.com object to fetch (e.g. boards, workspaces, users, updates, items).
350+
board_id (str): The Monday.com board id to fetch items from. Required only when object_type is 'items'.
351+
"""
352+
object_type: str = dataclasses.field(default=None)
353+
board_id: str = dataclasses.field(default=None)
354+
355+
def __post_init__(self):
356+
self.application_connector_type = enums.ApplicationConnectorType.MONDAY
357+
if isinstance(self.object_type, dict):
358+
self.object_type = self.object_type.get('value') or self.object_type.get('name') or self.object_type.get('label')
359+
if isinstance(self.object_type, str):
360+
normalized_object_type = self.object_type.strip().lower()
361+
if normalized_object_type:
362+
self.object_type = normalized_object_type
363+
if isinstance(self.board_id, dict):
364+
self.board_id = self.board_id.get('value') or self.board_id.get('name') or self.board_id.get('label')
365+
if self.board_id is not None:
366+
self.board_id = str(self.board_id).strip() or None
367+
368+
343369
@dataclasses.dataclass
344370
class DocusignDatasetConfig(ApplicationConnectorDatasetConfig):
345371
"""
@@ -386,5 +412,6 @@ class _ApplicationConnectorDatasetConfigFactory(_ApiClassFactory):
386412
enums.ApplicationConnectorType.DROPBOX: DropboxDatasetConfig,
387413
enums.ApplicationConnectorType.HUBSPOT: HubspotDatasetConfig,
388414
enums.ApplicationConnectorType.QUICKBOOKS: QuickbooksDatasetConfig,
415+
enums.ApplicationConnectorType.MONDAY: MondayDatasetConfig,
389416
enums.ApplicationConnectorType.DOCUSIGN: DocusignDatasetConfig,
390417
}

‎abacusai/api_class/enums.py‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -930,6 +930,13 @@ class MediaArtifactType(ApiEnum):
930930
AUDIO = 'AUDIO'
931931

932932

933+
class MediaArtifactOrigin(ApiEnum):
934+
"""How a media artifact entered the gallery."""
935+
GENERATED = 'generated'
936+
UPLOADED = 'uploaded'
937+
EDITOR_EXPORT = 'editor_export'
938+
939+
933940
class VerticalType(ApiEnum):
934941
"""Vertical types for specialized external applications."""
935942
HEALTH = 'HEALTH'

‎abacusai/client.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -717,7 +717,7 @@ class BaseApiClient:
717717
client_options (ClientOptions): Optional API client configurations
718718
skip_version_check (bool): If true, will skip checking the server's current API version on initializing the client
719719
"""
720-
client_version = '1.4.101'
720+
client_version = '1.4.102'
721721

722722
def __init__(self, api_key: str = None, server: str = None, client_options: ClientOptions = None, skip_version_check: bool = False, include_tb: bool = False):
723723
self.api_key = api_key
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
from .return_class import AbstractApiClass
2+
3+
4+
class CoworkDispatchAttachment(AbstractApiClass):
5+
"""
6+
CoWork desktop file upload result.
7+
8+
Args:
9+
client (ApiClient): An authenticated API Client instance
10+
attachmentId (str): Attachment id for downloadAgentAttachment
11+
filename (str): Original filename
12+
mimeType (str): MIME type of the uploaded file
13+
deploymentId (id): Hashed deployment id used for attachment storage lookup
14+
"""
15+
16+
def __init__(self, client, attachmentId=None, filename=None, mimeType=None, deploymentId=None):
17+
super().__init__(client, None)
18+
self.attachment_id = attachmentId
19+
self.filename = filename
20+
self.mime_type = mimeType
21+
self.deployment_id = deploymentId
22+
self.deprecated_keys = {}
23+
24+
def __repr__(self):
25+
repr_dict = {f'attachment_id': repr(self.attachment_id), f'filename': repr(
26+
self.filename), f'mime_type': repr(self.mime_type), f'deployment_id': repr(self.deployment_id)}
27+
class_name = "CoworkDispatchAttachment"
28+
repr_str = ',\n '.join([f'{key}={value}' for key, value in repr_dict.items(
29+
) if getattr(self, key, None) is not None and key not in self.deprecated_keys])
30+
return f"{class_name}({repr_str})"
31+
32+
def to_dict(self):
33+
"""
34+
Get a dict representation of the parameters in this class
35+
36+
Returns:
37+
dict: The dict value representation of the class parameters
38+
"""
39+
resp = {'attachment_id': self.attachment_id, 'filename': self.filename,
40+
'mime_type': self.mime_type, 'deployment_id': self.deployment_id}
41+
return {key: value for key, value in resp.items() if value is not None and key not in self.deprecated_keys}

‎abacusai/dataset.py‎

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ class Dataset(AbstractApiClass):
3737
referenceOnlyDocumentset (bool): Signifies whether to save the data reference only. Only valid if is_documentset if True.
3838
versionLimit (int): Version limit for the dataset.
3939
disableRealtimeContentProcessing (bool): Whether realtime content processing is disabled for this dataset (only applicable to REALTIME_CONTENT_STORE datasets).
40+
forceFullResync (bool): Whether a complete reindex is pending pickup by the import scheduler (only applicable to REALTIME_CONTENT_STORE datasets).
4041
realtimeContentStoreConfig (dict): Indexing options (e.g. chunk_size) for the realtime content store (only applicable to REALTIME_CONTENT_STORE datasets).
4142
latestDatasetVersion (DatasetVersion): The latest version of this dataset.
4243
schema (DatasetColumn): List of resolved columns.
@@ -46,7 +47,7 @@ class Dataset(AbstractApiClass):
4647
attachmentParsingConfig (AttachmentParsingConfig): The attachment parsing config used for dataset (eg. for salesforce attachment parsing)
4748
"""
4849

49-
def __init__(self, client, datasetId=None, sourceType=None, dataSource=None, createdAt=None, ignoreBefore=None, ephemeral=None, lookbackDays=None, databaseConnectorId=None, databaseConnectorConfig=None, connectorType=None, featureGroupTableName=None, applicationConnectorId=None, applicationConnectorConfig=None, incremental=None, isDocumentset=None, extractBoundingBoxes=None, mergeFileSchemas=None, referenceOnlyDocumentset=None, versionLimit=None, disableRealtimeContentProcessing=None, realtimeContentStoreConfig=None, schema={}, refreshSchedules={}, latestDatasetVersion={}, parsingConfig={}, documentProcessingConfig={}, attachmentParsingConfig={}):
50+
def __init__(self, client, datasetId=None, sourceType=None, dataSource=None, createdAt=None, ignoreBefore=None, ephemeral=None, lookbackDays=None, databaseConnectorId=None, databaseConnectorConfig=None, connectorType=None, featureGroupTableName=None, applicationConnectorId=None, applicationConnectorConfig=None, incremental=None, isDocumentset=None, extractBoundingBoxes=None, mergeFileSchemas=None, referenceOnlyDocumentset=None, versionLimit=None, disableRealtimeContentProcessing=None, forceFullResync=None, realtimeContentStoreConfig=None, schema={}, refreshSchedules={}, latestDatasetVersion={}, parsingConfig={}, documentProcessingConfig={}, attachmentParsingConfig={}):
5051
super().__init__(client, datasetId)
5152
self.dataset_id = datasetId
5253
self.source_type = sourceType
@@ -68,6 +69,7 @@ def __init__(self, client, datasetId=None, sourceType=None, dataSource=None, cre
6869
self.reference_only_documentset = referenceOnlyDocumentset
6970
self.version_limit = versionLimit
7071
self.disable_realtime_content_processing = disableRealtimeContentProcessing
72+
self.force_full_resync = forceFullResync
7173
self.realtime_content_store_config = realtimeContentStoreConfig
7274
self.schema = client._build_class(DatasetColumn, schema)
7375
self.refresh_schedules = client._build_class(
@@ -82,8 +84,8 @@ def __init__(self, client, datasetId=None, sourceType=None, dataSource=None, cre
8284
self.deprecated_keys = {}
8385

8486
def __repr__(self):
85-
repr_dict = {f'dataset_id': repr(self.dataset_id), f'source_type': repr(self.source_type), f'data_source': repr(self.data_source), f'created_at': repr(self.created_at), f'ignore_before': repr(self.ignore_before), f'ephemeral': repr(self.ephemeral), f'lookback_days': repr(self.lookback_days), f'database_connector_id': repr(self.database_connector_id), f'database_connector_config': repr(self.database_connector_config), f'connector_type': repr(self.connector_type), f'feature_group_table_name': repr(self.feature_group_table_name), f'application_connector_id': repr(self.application_connector_id), f'application_connector_config': repr(self.application_connector_config), f'incremental': repr(self.incremental), f'is_documentset': repr(
86-
self.is_documentset), f'extract_bounding_boxes': repr(self.extract_bounding_boxes), f'merge_file_schemas': repr(self.merge_file_schemas), f'reference_only_documentset': repr(self.reference_only_documentset), f'version_limit': repr(self.version_limit), f'disable_realtime_content_processing': repr(self.disable_realtime_content_processing), f'realtime_content_store_config': repr(self.realtime_content_store_config), f'schema': repr(self.schema), f'refresh_schedules': repr(self.refresh_schedules), f'latest_dataset_version': repr(self.latest_dataset_version), f'parsing_config': repr(self.parsing_config), f'document_processing_config': repr(self.document_processing_config), f'attachment_parsing_config': repr(self.attachment_parsing_config)}
87+
repr_dict = {f'dataset_id': repr(self.dataset_id), f'source_type': repr(self.source_type), f'data_source': repr(self.data_source), f'created_at': repr(self.created_at), f'ignore_before': repr(self.ignore_before), f'ephemeral': repr(self.ephemeral), f'lookback_days': repr(self.lookback_days), f'database_connector_id': repr(self.database_connector_id), f'database_connector_config': repr(self.database_connector_config), f'connector_type': repr(self.connector_type), f'feature_group_table_name': repr(self.feature_group_table_name), f'application_connector_id': repr(self.application_connector_id), f'application_connector_config': repr(self.application_connector_config), f'incremental': repr(self.incremental), f'is_documentset': repr(self.is_documentset), f'extract_bounding_boxes': repr(
88+
self.extract_bounding_boxes), f'merge_file_schemas': repr(self.merge_file_schemas), f'reference_only_documentset': repr(self.reference_only_documentset), f'version_limit': repr(self.version_limit), f'disable_realtime_content_processing': repr(self.disable_realtime_content_processing), f'force_full_resync': repr(self.force_full_resync), f'realtime_content_store_config': repr(self.realtime_content_store_config), f'schema': repr(self.schema), f'refresh_schedules': repr(self.refresh_schedules), f'latest_dataset_version': repr(self.latest_dataset_version), f'parsing_config': repr(self.parsing_config), f'document_processing_config': repr(self.document_processing_config), f'attachment_parsing_config': repr(self.attachment_parsing_config)}
8789
class_name = "Dataset"
8890
repr_str = ',\n '.join([f'{key}={value}' for key, value in repr_dict.items(
8991
) if getattr(self, key, None) is not None and key not in self.deprecated_keys])
@@ -97,7 +99,7 @@ def to_dict(self):
9799
dict: The dict value representation of the class parameters
98100
"""
99101
resp = {'dataset_id': self.dataset_id, 'source_type': self.source_type, 'data_source': self.data_source, 'created_at': self.created_at, 'ignore_before': self.ignore_before, 'ephemeral': self.ephemeral, 'lookback_days': self.lookback_days, 'database_connector_id': self.database_connector_id, 'database_connector_config': self.database_connector_config, 'connector_type': self.connector_type, 'feature_group_table_name': self.feature_group_table_name, 'application_connector_id': self.application_connector_id, 'application_connector_config': self.application_connector_config, 'incremental': self.incremental, 'is_documentset': self.is_documentset, 'extract_bounding_boxes': self.extract_bounding_boxes, 'merge_file_schemas': self.merge_file_schemas,
100-
'reference_only_documentset': self.reference_only_documentset, 'version_limit': self.version_limit, 'disable_realtime_content_processing': self.disable_realtime_content_processing, 'realtime_content_store_config': self.realtime_content_store_config, 'schema': self._get_attribute_as_dict(self.schema), 'refresh_schedules': self._get_attribute_as_dict(self.refresh_schedules), 'latest_dataset_version': self._get_attribute_as_dict(self.latest_dataset_version), 'parsing_config': self._get_attribute_as_dict(self.parsing_config), 'document_processing_config': self._get_attribute_as_dict(self.document_processing_config), 'attachment_parsing_config': self._get_attribute_as_dict(self.attachment_parsing_config)}
102+
'reference_only_documentset': self.reference_only_documentset, 'version_limit': self.version_limit, 'disable_realtime_content_processing': self.disable_realtime_content_processing, 'force_full_resync': self.force_full_resync, 'realtime_content_store_config': self.realtime_content_store_config, 'schema': self._get_attribute_as_dict(self.schema), 'refresh_schedules': self._get_attribute_as_dict(self.refresh_schedules), 'latest_dataset_version': self._get_attribute_as_dict(self.latest_dataset_version), 'parsing_config': self._get_attribute_as_dict(self.parsing_config), 'document_processing_config': self._get_attribute_as_dict(self.document_processing_config), 'attachment_parsing_config': self._get_attribute_as_dict(self.attachment_parsing_config)}
101103
return {key: value for key, value in resp.items() if value is not None and key not in self.deprecated_keys}
102104

103105
def get_raw_data_from_realtime(self, check_permissions: bool = False, start_time: str = None, end_time: str = None, column_filter: dict = None):

0 commit comments

Comments
 (0)