airbyte-agent-slack 0.1.15__py3-none-any.whl → 0.1.24__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- airbyte_agent_slack/__init__.py +32 -4
- airbyte_agent_slack/_vendored/connector_sdk/auth_strategies.py +1 -3
- airbyte_agent_slack/_vendored/connector_sdk/connector_model_loader.py +138 -0
- airbyte_agent_slack/_vendored/connector_sdk/executor/local_executor.py +4 -4
- airbyte_agent_slack/_vendored/connector_sdk/introspection.py +222 -10
- airbyte_agent_slack/_vendored/connector_sdk/schema/base.py +34 -2
- airbyte_agent_slack/_vendored/connector_sdk/schema/components.py +5 -0
- airbyte_agent_slack/_vendored/connector_sdk/schema/extensions.py +71 -0
- airbyte_agent_slack/_vendored/connector_sdk/types.py +1 -0
- airbyte_agent_slack/connector.py +266 -33
- airbyte_agent_slack/connector_model.py +106 -6
- airbyte_agent_slack/models.py +169 -9
- airbyte_agent_slack/types.py +785 -0
- {airbyte_agent_slack-0.1.15.dist-info → airbyte_agent_slack-0.1.24.dist-info}/METADATA +12 -8
- {airbyte_agent_slack-0.1.15.dist-info → airbyte_agent_slack-0.1.24.dist-info}/RECORD +16 -16
- {airbyte_agent_slack-0.1.15.dist-info → airbyte_agent_slack-0.1.24.dist-info}/WHEEL +0 -0
airbyte_agent_slack/models.py
CHANGED
|
@@ -17,7 +17,7 @@ class SlackTokenAuthenticationAuthConfig(BaseModel):
|
|
|
17
17
|
|
|
18
18
|
model_config = ConfigDict(extra="forbid")
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
api_token: str
|
|
21
21
|
"""Your Slack Bot Token (xoxb-) or User Token (xoxp-)"""
|
|
22
22
|
|
|
23
23
|
class SlackOauth20AuthenticationAuthConfig(BaseModel):
|
|
@@ -197,6 +197,14 @@ class Attachment(BaseModel):
|
|
|
197
197
|
footer_icon: Union[str | None, Any] = Field(default=None)
|
|
198
198
|
ts: Union[Any, Any] = Field(default=None)
|
|
199
199
|
|
|
200
|
+
class Reaction(BaseModel):
|
|
201
|
+
"""Message reaction"""
|
|
202
|
+
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
203
|
+
|
|
204
|
+
name: Union[str | None, Any] = Field(default=None)
|
|
205
|
+
users: Union[list[str] | None, Any] = Field(default=None)
|
|
206
|
+
count: Union[int | None, Any] = Field(default=None)
|
|
207
|
+
|
|
200
208
|
class File(BaseModel):
|
|
201
209
|
"""File object"""
|
|
202
210
|
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
@@ -221,14 +229,6 @@ class File(BaseModel):
|
|
|
221
229
|
created: Union[int | None, Any] = Field(default=None)
|
|
222
230
|
timestamp: Union[int | None, Any] = Field(default=None)
|
|
223
231
|
|
|
224
|
-
class Reaction(BaseModel):
|
|
225
|
-
"""Message reaction"""
|
|
226
|
-
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
227
|
-
|
|
228
|
-
name: Union[str | None, Any] = Field(default=None)
|
|
229
|
-
users: Union[list[str] | None, Any] = Field(default=None)
|
|
230
|
-
count: Union[int | None, Any] = Field(default=None)
|
|
231
|
-
|
|
232
232
|
class Message(BaseModel):
|
|
233
233
|
"""Slack message object"""
|
|
234
234
|
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
@@ -496,6 +496,166 @@ class SlackExecuteResultWithMeta(SlackExecuteResult[T], Generic[T, S]):
|
|
|
496
496
|
meta: S
|
|
497
497
|
"""Metadata about the response (e.g., pagination cursors, record counts)."""
|
|
498
498
|
|
|
499
|
+
# ===== SEARCH DATA MODELS =====
|
|
500
|
+
# Entity-specific Pydantic models for search result data
|
|
501
|
+
|
|
502
|
+
# Type variable for search data generic
|
|
503
|
+
D = TypeVar('D')
|
|
504
|
+
|
|
505
|
+
class ChannelsSearchData(BaseModel):
|
|
506
|
+
"""Search result data for channels entity."""
|
|
507
|
+
model_config = ConfigDict(extra="allow")
|
|
508
|
+
|
|
509
|
+
context_team_id: str | None = None
|
|
510
|
+
"""The unique identifier of the team context in which the channel exists."""
|
|
511
|
+
created: int | None = None
|
|
512
|
+
"""The timestamp when the channel was created."""
|
|
513
|
+
creator: str | None = None
|
|
514
|
+
"""The ID of the user who created the channel."""
|
|
515
|
+
id: str | None = None
|
|
516
|
+
"""The unique identifier of the channel."""
|
|
517
|
+
is_archived: bool | None = None
|
|
518
|
+
"""Indicates if the channel is archived."""
|
|
519
|
+
is_channel: bool | None = None
|
|
520
|
+
"""Indicates if the entity is a channel."""
|
|
521
|
+
is_ext_shared: bool | None = None
|
|
522
|
+
"""Indicates if the channel is externally shared."""
|
|
523
|
+
is_general: bool | None = None
|
|
524
|
+
"""Indicates if the channel is a general channel in the workspace."""
|
|
525
|
+
is_group: bool | None = None
|
|
526
|
+
"""Indicates if the channel is a group (private channel) rather than a regular channel."""
|
|
527
|
+
is_im: bool | None = None
|
|
528
|
+
"""Indicates if the entity is a direct message (IM) channel."""
|
|
529
|
+
is_member: bool | None = None
|
|
530
|
+
"""Indicates if the calling user is a member of the channel."""
|
|
531
|
+
is_mpim: bool | None = None
|
|
532
|
+
"""Indicates if the entity is a multiple person direct message (MPIM) channel."""
|
|
533
|
+
is_org_shared: bool | None = None
|
|
534
|
+
"""Indicates if the channel is organization-wide shared."""
|
|
535
|
+
is_pending_ext_shared: bool | None = None
|
|
536
|
+
"""Indicates if the channel is pending external shared."""
|
|
537
|
+
is_private: bool | None = None
|
|
538
|
+
"""Indicates if the channel is a private channel."""
|
|
539
|
+
is_read_only: bool | None = None
|
|
540
|
+
"""Indicates if the channel is read-only."""
|
|
541
|
+
is_shared: bool | None = None
|
|
542
|
+
"""Indicates if the channel is shared."""
|
|
543
|
+
last_read: str | None = None
|
|
544
|
+
"""The timestamp of the user's last read message in the channel."""
|
|
545
|
+
locale: str | None = None
|
|
546
|
+
"""The locale of the channel."""
|
|
547
|
+
name: str | None = None
|
|
548
|
+
"""The name of the channel."""
|
|
549
|
+
name_normalized: str | None = None
|
|
550
|
+
"""The normalized name of the channel."""
|
|
551
|
+
num_members: int | None = None
|
|
552
|
+
"""The number of members in the channel."""
|
|
553
|
+
parent_conversation: str | None = None
|
|
554
|
+
"""The parent conversation of the channel."""
|
|
555
|
+
pending_connected_team_ids: list[Any] | None = None
|
|
556
|
+
"""The IDs of teams that are pending to be connected to the channel."""
|
|
557
|
+
pending_shared: list[Any] | None = None
|
|
558
|
+
"""The list of pending shared items of the channel."""
|
|
559
|
+
previous_names: list[Any] | None = None
|
|
560
|
+
"""The previous names of the channel."""
|
|
561
|
+
purpose: dict[str, Any] | None = None
|
|
562
|
+
"""The purpose of the channel."""
|
|
563
|
+
shared_team_ids: list[Any] | None = None
|
|
564
|
+
"""The IDs of teams with which the channel is shared."""
|
|
565
|
+
topic: dict[str, Any] | None = None
|
|
566
|
+
"""The topic of the channel."""
|
|
567
|
+
unlinked: int | None = None
|
|
568
|
+
"""Indicates if the channel is unlinked."""
|
|
569
|
+
updated: int | None = None
|
|
570
|
+
"""The timestamp when the channel was last updated."""
|
|
571
|
+
|
|
572
|
+
|
|
573
|
+
class UsersSearchData(BaseModel):
|
|
574
|
+
"""Search result data for users entity."""
|
|
575
|
+
model_config = ConfigDict(extra="allow")
|
|
576
|
+
|
|
577
|
+
color: str | None = None
|
|
578
|
+
"""The color assigned to the user for visual purposes."""
|
|
579
|
+
deleted: bool | None = None
|
|
580
|
+
"""Indicates if the user is deleted or not."""
|
|
581
|
+
has_2fa: bool | None = None
|
|
582
|
+
"""Flag indicating if the user has two-factor authentication enabled."""
|
|
583
|
+
id: str | None = None
|
|
584
|
+
"""Unique identifier for the user."""
|
|
585
|
+
is_admin: bool | None = None
|
|
586
|
+
"""Flag specifying if the user is an admin or not."""
|
|
587
|
+
is_app_user: bool | None = None
|
|
588
|
+
"""Specifies if the user is an app user."""
|
|
589
|
+
is_bot: bool | None = None
|
|
590
|
+
"""Indicates if the user is a bot account."""
|
|
591
|
+
is_email_confirmed: bool | None = None
|
|
592
|
+
"""Flag indicating if the user's email is confirmed."""
|
|
593
|
+
is_forgotten: bool | None = None
|
|
594
|
+
"""Specifies if the user is marked as forgotten."""
|
|
595
|
+
is_invited_user: bool | None = None
|
|
596
|
+
"""Indicates if the user is invited or not."""
|
|
597
|
+
is_owner: bool | None = None
|
|
598
|
+
"""Flag indicating if the user is an owner."""
|
|
599
|
+
is_primary_owner: bool | None = None
|
|
600
|
+
"""Specifies if the user is the primary owner."""
|
|
601
|
+
is_restricted: bool | None = None
|
|
602
|
+
"""Flag specifying if the user is restricted."""
|
|
603
|
+
is_ultra_restricted: bool | None = None
|
|
604
|
+
"""Indicates if the user has ultra-restricted access."""
|
|
605
|
+
name: str | None = None
|
|
606
|
+
"""The username of the user."""
|
|
607
|
+
profile: dict[str, Any] | None = None
|
|
608
|
+
"""User's profile information containing detailed details."""
|
|
609
|
+
real_name: str | None = None
|
|
610
|
+
"""The real name of the user."""
|
|
611
|
+
team_id: str | None = None
|
|
612
|
+
"""Unique identifier for the team the user belongs to."""
|
|
613
|
+
tz: str | None = None
|
|
614
|
+
"""Timezone of the user."""
|
|
615
|
+
tz_label: str | None = None
|
|
616
|
+
"""Label representing the timezone of the user."""
|
|
617
|
+
tz_offset: int | None = None
|
|
618
|
+
"""Offset of the user's timezone."""
|
|
619
|
+
updated: int | None = None
|
|
620
|
+
"""Timestamp of when the user's information was last updated."""
|
|
621
|
+
who_can_share_contact_card: str | None = None
|
|
622
|
+
"""Specifies who can share the user's contact card."""
|
|
623
|
+
|
|
624
|
+
|
|
625
|
+
# ===== GENERIC SEARCH RESULT TYPES =====
|
|
626
|
+
|
|
627
|
+
class AirbyteSearchHit(BaseModel, Generic[D]):
|
|
628
|
+
"""A single search result with typed data."""
|
|
629
|
+
model_config = ConfigDict(extra="allow")
|
|
630
|
+
|
|
631
|
+
id: str | None = None
|
|
632
|
+
"""Unique identifier for the record."""
|
|
633
|
+
score: float | None = None
|
|
634
|
+
"""Relevance score for the match."""
|
|
635
|
+
data: D
|
|
636
|
+
"""The matched record data."""
|
|
637
|
+
|
|
638
|
+
|
|
639
|
+
class AirbyteSearchResult(BaseModel, Generic[D]):
|
|
640
|
+
"""Result from Airbyte cache search operations with typed hits."""
|
|
641
|
+
model_config = ConfigDict(extra="allow")
|
|
642
|
+
|
|
643
|
+
hits: list[AirbyteSearchHit[D]] = Field(default_factory=list)
|
|
644
|
+
"""List of matching records."""
|
|
645
|
+
next_cursor: str | None = None
|
|
646
|
+
"""Cursor for fetching the next page of results."""
|
|
647
|
+
took_ms: int | None = None
|
|
648
|
+
"""Time taken to execute the search in milliseconds."""
|
|
649
|
+
|
|
650
|
+
|
|
651
|
+
# ===== ENTITY-SPECIFIC SEARCH RESULT TYPE ALIASES =====
|
|
652
|
+
|
|
653
|
+
ChannelsSearchResult = AirbyteSearchResult[ChannelsSearchData]
|
|
654
|
+
"""Search result type for channels entity."""
|
|
655
|
+
|
|
656
|
+
UsersSearchResult = AirbyteSearchResult[UsersSearchData]
|
|
657
|
+
"""Search result type for users entity."""
|
|
658
|
+
|
|
499
659
|
|
|
500
660
|
|
|
501
661
|
# ===== OPERATION RESULT TYPE ALIASES =====
|