slack-objects 0.1.0__tar.gz → 0.1.1__tar.gz
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.
- {slack_objects-0.1.0 → slack_objects-0.1.1}/PKG-INFO +22 -6
- {slack_objects-0.1.0 → slack_objects-0.1.1}/README.md +21 -5
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects/_version.py +3 -3
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects.egg-info/PKG-INFO +22 -6
- {slack_objects-0.1.0 → slack_objects-0.1.1}/.github/copilot-instructions.md +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/.github/workflows/ci.yml +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/.github/workflows/publish-pypi.yml +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/.github/workflows/publish-testpypi.yml +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/.gitignore +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/LICENSE +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/pyproject.toml +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/pytest.ini +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/setup.cfg +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects/__init__.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects/api_caller.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects/base.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects/client.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects/config.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects/conversations.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects/files.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects/idp_groups.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects/messages.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects/rate_limits.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects/scim_base.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects/usergroups.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects/users.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects/workspaces.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects.egg-info/SOURCES.txt +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects.egg-info/dependency_links.txt +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects.egg-info/requires.txt +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/src/slack_objects.egg-info/top_level.txt +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Examples/examples_config.example.json +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Examples/users_search_by_email_example.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Examples/users_test_AzureKeyVault.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/SCIM/conftest_live.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/SCIM/run_all_scim_users_live_tests.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/SCIM/test_scim_idp_groups_live.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/SCIM/test_scim_users_create_live.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/SCIM/test_scim_users_deactivate_live.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/SCIM/test_scim_users_input_validation_live.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/SCIM/test_scim_users_make_guest_live.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/SCIM/test_scim_users_reactivate_live.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/SCIM/test_scim_users_update_attribute_live.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/SCIM/test_scim_users_update_email_live.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Smoke/_smoke_harness.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Smoke/api_caller_smoke_test.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Smoke/conversations_smoke_test.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Smoke/files_smoke_test.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Smoke/idp_groups_smoke_test.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Smoke/messages_smoke_test.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Smoke/run_all_smoke.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Smoke/security_smoke_test.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Smoke/usergroups_smoke_test.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Smoke/users_smoke_test.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Smoke/workspaces_smoke_test.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/UnitTests/config_unit_test.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/UnitTests/conversations_unit_test.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/UnitTests/files_unit_test.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/UnitTests/idp_groups_unit_test.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/UnitTests/messages_unit_test.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/UnitTests/rate_limits_unit_test.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/UnitTests/usergroups_test.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/UnitTests/users_unit_test.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/UnitTests/workspaces_unit_test.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Users/conftest_live.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Users/run_all_users_live_tests.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Users/test_users_admin_live.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Users/test_users_classification_live.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Users/test_users_input_validation_live.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/Users/test_users_read_live.py +0 -0
- {slack_objects-0.1.0 → slack_objects-0.1.1}/tests/live_test_config.example.json +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: slack-objects
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.1
|
|
4
4
|
Summary: Opinionated, testable Python wrappers for Slack’s Web, Admin, and SCIM APIs, organized by object domain (users, conversations, messages, files, workspaces, and IdP groups). Designed for automation and administration workflows.
|
|
5
5
|
Author-email: "Marcos E. Mercado" <marcos_elias@hotmail.com>
|
|
6
6
|
Keywords: slack,objects,classes,slack objects,utilities,slack utilities,slack object types,slack types,types
|
|
@@ -23,7 +23,7 @@ Dynamic: license-file
|
|
|
23
23
|
|
|
24
24
|
A focused Python package for working with **Slack objects** commonly used in administration and automation workflows.
|
|
25
25
|
|
|
26
|
-
`slack-objects` provides **opinionated, testable wrappers** around the Slack Web API, Admin API, and
|
|
26
|
+
`slack-objects` provides **opinionated, testable wrappers** around the Slack Web API, Admin API, SCIM API, and Discovery API—favoring object-based access over raw endpoint calls.
|
|
27
27
|
|
|
28
28
|
---
|
|
29
29
|
|
|
@@ -55,7 +55,7 @@ Instead, it focuses on higher-level object operations that typically require:
|
|
|
55
55
|
- multiple API calls
|
|
56
56
|
- pagination
|
|
57
57
|
- rate limiting
|
|
58
|
-
- Admin API or
|
|
58
|
+
- Admin API, SCIM, or Discovery API usage
|
|
59
59
|
- non-trivial orchestration logic
|
|
60
60
|
|
|
61
61
|
---
|
|
@@ -73,7 +73,7 @@ cfg = SlackObjectsConfig(
|
|
|
73
73
|
bot_token="xoxb-...",
|
|
74
74
|
user_token="xoxp-...",
|
|
75
75
|
scim_token="xoxp-...",
|
|
76
|
-
# see SlackObjectsConfig for additional options (scim_base_url, http_timeout_seconds, etc.)
|
|
76
|
+
# see SlackObjectsConfig for additional options (team_id, scim_base_url, http_timeout_seconds, etc.)
|
|
77
77
|
)
|
|
78
78
|
|
|
79
79
|
slack = SlackObjectsClient(cfg)
|
|
@@ -139,6 +139,8 @@ The codebase is designed to be tested **without hitting Slack**.
|
|
|
139
139
|
|
|
140
140
|
## Installation
|
|
141
141
|
|
|
142
|
+
Requires **Python 3.9+**.
|
|
143
|
+
|
|
142
144
|
```bash
|
|
143
145
|
pip install slack-objects
|
|
144
146
|
```
|
|
@@ -154,7 +156,8 @@ cfg = SlackObjectsConfig(
|
|
|
154
156
|
bot_token="xoxb-...",
|
|
155
157
|
user_token="xoxp-...",
|
|
156
158
|
scim_token="xoxp-...",
|
|
157
|
-
|
|
159
|
+
team_id="T0123ABC", # workspace ID; required for org-wide tokens calling workspace-scoped Web APIs
|
|
160
|
+
default_rate_tier=RateTier.TIER_2, # fallback sleep between API calls when no specific tier matches (default)
|
|
158
161
|
)
|
|
159
162
|
```
|
|
160
163
|
|
|
@@ -175,10 +178,23 @@ python -m tests.Smoke.run_all_smoke
|
|
|
175
178
|
|
|
176
179
|
---
|
|
177
180
|
|
|
181
|
+
## Rate Limiting
|
|
182
|
+
All Slack Web/Admin API calls go through `SlackApiCaller`, which:
|
|
183
|
+
|
|
184
|
+
- Sleeps according to the resolved rate tier after every successful call
|
|
185
|
+
- Automatically retries on HTTP **429** (rate-limited) responses up to **5 times**, respecting the `Retry-After` header
|
|
186
|
+
|
|
187
|
+
Rate tiers are resolved in priority order:
|
|
188
|
+
explicit per-call tier → method-specific override → prefix rule → `default_rate_tier` from config.
|
|
189
|
+
|
|
190
|
+
---
|
|
191
|
+
|
|
178
192
|
## Notes
|
|
179
193
|
|
|
180
194
|
- SCIM v2 is the default; v1 is supported where applicable
|
|
181
|
-
- `PC_Utils` is
|
|
195
|
+
- `PC_Utils` is a required dependency (used for datetime handling in `set_guest_expiration_date`)
|
|
182
196
|
- This package is intended for automation and administration workflows
|
|
183
197
|
- `resolve_user_id` accepts flexible identifiers (user ID, email, or @username) and verifies existence via Web API + SCIM fallback
|
|
184
198
|
- `is_user_authorized` supports IdP-group-based authorization checks with configurable read/write access levels
|
|
199
|
+
- SCIM user operations are available on `Users`: create, deactivate, reactivate, update attributes, update email, and convert to multi-channel guest
|
|
200
|
+
- Discovery API is used for `Users.get_channels` and `Conversations.get_members` (requires appropriate token scopes)
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
A focused Python package for working with **Slack objects** commonly used in administration and automation workflows.
|
|
4
4
|
|
|
5
|
-
`slack-objects` provides **opinionated, testable wrappers** around the Slack Web API, Admin API, and
|
|
5
|
+
`slack-objects` provides **opinionated, testable wrappers** around the Slack Web API, Admin API, SCIM API, and Discovery API—favoring object-based access over raw endpoint calls.
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -34,7 +34,7 @@ Instead, it focuses on higher-level object operations that typically require:
|
|
|
34
34
|
- multiple API calls
|
|
35
35
|
- pagination
|
|
36
36
|
- rate limiting
|
|
37
|
-
- Admin API or
|
|
37
|
+
- Admin API, SCIM, or Discovery API usage
|
|
38
38
|
- non-trivial orchestration logic
|
|
39
39
|
|
|
40
40
|
---
|
|
@@ -52,7 +52,7 @@ cfg = SlackObjectsConfig(
|
|
|
52
52
|
bot_token="xoxb-...",
|
|
53
53
|
user_token="xoxp-...",
|
|
54
54
|
scim_token="xoxp-...",
|
|
55
|
-
# see SlackObjectsConfig for additional options (scim_base_url, http_timeout_seconds, etc.)
|
|
55
|
+
# see SlackObjectsConfig for additional options (team_id, scim_base_url, http_timeout_seconds, etc.)
|
|
56
56
|
)
|
|
57
57
|
|
|
58
58
|
slack = SlackObjectsClient(cfg)
|
|
@@ -118,6 +118,8 @@ The codebase is designed to be tested **without hitting Slack**.
|
|
|
118
118
|
|
|
119
119
|
## Installation
|
|
120
120
|
|
|
121
|
+
Requires **Python 3.9+**.
|
|
122
|
+
|
|
121
123
|
```bash
|
|
122
124
|
pip install slack-objects
|
|
123
125
|
```
|
|
@@ -133,7 +135,8 @@ cfg = SlackObjectsConfig(
|
|
|
133
135
|
bot_token="xoxb-...",
|
|
134
136
|
user_token="xoxp-...",
|
|
135
137
|
scim_token="xoxp-...",
|
|
136
|
-
|
|
138
|
+
team_id="T0123ABC", # workspace ID; required for org-wide tokens calling workspace-scoped Web APIs
|
|
139
|
+
default_rate_tier=RateTier.TIER_2, # fallback sleep between API calls when no specific tier matches (default)
|
|
137
140
|
)
|
|
138
141
|
```
|
|
139
142
|
|
|
@@ -154,10 +157,23 @@ python -m tests.Smoke.run_all_smoke
|
|
|
154
157
|
|
|
155
158
|
---
|
|
156
159
|
|
|
160
|
+
## Rate Limiting
|
|
161
|
+
All Slack Web/Admin API calls go through `SlackApiCaller`, which:
|
|
162
|
+
|
|
163
|
+
- Sleeps according to the resolved rate tier after every successful call
|
|
164
|
+
- Automatically retries on HTTP **429** (rate-limited) responses up to **5 times**, respecting the `Retry-After` header
|
|
165
|
+
|
|
166
|
+
Rate tiers are resolved in priority order:
|
|
167
|
+
explicit per-call tier → method-specific override → prefix rule → `default_rate_tier` from config.
|
|
168
|
+
|
|
169
|
+
---
|
|
170
|
+
|
|
157
171
|
## Notes
|
|
158
172
|
|
|
159
173
|
- SCIM v2 is the default; v1 is supported where applicable
|
|
160
|
-
- `PC_Utils` is
|
|
174
|
+
- `PC_Utils` is a required dependency (used for datetime handling in `set_guest_expiration_date`)
|
|
161
175
|
- This package is intended for automation and administration workflows
|
|
162
176
|
- `resolve_user_id` accepts flexible identifiers (user ID, email, or @username) and verifies existence via Web API + SCIM fallback
|
|
163
177
|
- `is_user_authorized` supports IdP-group-based authorization checks with configurable read/write access levels
|
|
178
|
+
- SCIM user operations are available on `Users`: create, deactivate, reactivate, update attributes, update email, and convert to multi-channel guest
|
|
179
|
+
- Discovery API is used for `Users.get_channels` and `Conversations.get_members` (requires appropriate token scopes)
|
|
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
|
|
|
28
28
|
commit_id: COMMIT_ID
|
|
29
29
|
__commit_id__: COMMIT_ID
|
|
30
30
|
|
|
31
|
-
__version__ = version = '0.1.
|
|
32
|
-
__version_tuple__ = version_tuple = (0, 1,
|
|
31
|
+
__version__ = version = '0.1.1'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 1, 1)
|
|
33
33
|
|
|
34
|
-
__commit_id__ = commit_id = '
|
|
34
|
+
__commit_id__ = commit_id = 'g74ff4e47f'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: slack-objects
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.1
|
|
4
4
|
Summary: Opinionated, testable Python wrappers for Slack’s Web, Admin, and SCIM APIs, organized by object domain (users, conversations, messages, files, workspaces, and IdP groups). Designed for automation and administration workflows.
|
|
5
5
|
Author-email: "Marcos E. Mercado" <marcos_elias@hotmail.com>
|
|
6
6
|
Keywords: slack,objects,classes,slack objects,utilities,slack utilities,slack object types,slack types,types
|
|
@@ -23,7 +23,7 @@ Dynamic: license-file
|
|
|
23
23
|
|
|
24
24
|
A focused Python package for working with **Slack objects** commonly used in administration and automation workflows.
|
|
25
25
|
|
|
26
|
-
`slack-objects` provides **opinionated, testable wrappers** around the Slack Web API, Admin API, and
|
|
26
|
+
`slack-objects` provides **opinionated, testable wrappers** around the Slack Web API, Admin API, SCIM API, and Discovery API—favoring object-based access over raw endpoint calls.
|
|
27
27
|
|
|
28
28
|
---
|
|
29
29
|
|
|
@@ -55,7 +55,7 @@ Instead, it focuses on higher-level object operations that typically require:
|
|
|
55
55
|
- multiple API calls
|
|
56
56
|
- pagination
|
|
57
57
|
- rate limiting
|
|
58
|
-
- Admin API or
|
|
58
|
+
- Admin API, SCIM, or Discovery API usage
|
|
59
59
|
- non-trivial orchestration logic
|
|
60
60
|
|
|
61
61
|
---
|
|
@@ -73,7 +73,7 @@ cfg = SlackObjectsConfig(
|
|
|
73
73
|
bot_token="xoxb-...",
|
|
74
74
|
user_token="xoxp-...",
|
|
75
75
|
scim_token="xoxp-...",
|
|
76
|
-
# see SlackObjectsConfig for additional options (scim_base_url, http_timeout_seconds, etc.)
|
|
76
|
+
# see SlackObjectsConfig for additional options (team_id, scim_base_url, http_timeout_seconds, etc.)
|
|
77
77
|
)
|
|
78
78
|
|
|
79
79
|
slack = SlackObjectsClient(cfg)
|
|
@@ -139,6 +139,8 @@ The codebase is designed to be tested **without hitting Slack**.
|
|
|
139
139
|
|
|
140
140
|
## Installation
|
|
141
141
|
|
|
142
|
+
Requires **Python 3.9+**.
|
|
143
|
+
|
|
142
144
|
```bash
|
|
143
145
|
pip install slack-objects
|
|
144
146
|
```
|
|
@@ -154,7 +156,8 @@ cfg = SlackObjectsConfig(
|
|
|
154
156
|
bot_token="xoxb-...",
|
|
155
157
|
user_token="xoxp-...",
|
|
156
158
|
scim_token="xoxp-...",
|
|
157
|
-
|
|
159
|
+
team_id="T0123ABC", # workspace ID; required for org-wide tokens calling workspace-scoped Web APIs
|
|
160
|
+
default_rate_tier=RateTier.TIER_2, # fallback sleep between API calls when no specific tier matches (default)
|
|
158
161
|
)
|
|
159
162
|
```
|
|
160
163
|
|
|
@@ -175,10 +178,23 @@ python -m tests.Smoke.run_all_smoke
|
|
|
175
178
|
|
|
176
179
|
---
|
|
177
180
|
|
|
181
|
+
## Rate Limiting
|
|
182
|
+
All Slack Web/Admin API calls go through `SlackApiCaller`, which:
|
|
183
|
+
|
|
184
|
+
- Sleeps according to the resolved rate tier after every successful call
|
|
185
|
+
- Automatically retries on HTTP **429** (rate-limited) responses up to **5 times**, respecting the `Retry-After` header
|
|
186
|
+
|
|
187
|
+
Rate tiers are resolved in priority order:
|
|
188
|
+
explicit per-call tier → method-specific override → prefix rule → `default_rate_tier` from config.
|
|
189
|
+
|
|
190
|
+
---
|
|
191
|
+
|
|
178
192
|
## Notes
|
|
179
193
|
|
|
180
194
|
- SCIM v2 is the default; v1 is supported where applicable
|
|
181
|
-
- `PC_Utils` is
|
|
195
|
+
- `PC_Utils` is a required dependency (used for datetime handling in `set_guest_expiration_date`)
|
|
182
196
|
- This package is intended for automation and administration workflows
|
|
183
197
|
- `resolve_user_id` accepts flexible identifiers (user ID, email, or @username) and verifies existence via Web API + SCIM fallback
|
|
184
198
|
- `is_user_authorized` supports IdP-group-based authorization checks with configurable read/write access levels
|
|
199
|
+
- SCIM user operations are available on `Users`: create, deactivate, reactivate, update attributes, update email, and convert to multi-channel guest
|
|
200
|
+
- Discovery API is used for `Users.get_channels` and `Conversations.get_members` (requires appropriate token scopes)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{slack_objects-0.1.0 → slack_objects-0.1.1}/tests/SCIM/test_scim_users_input_validation_live.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{slack_objects-0.1.0 → slack_objects-0.1.1}/tests/SCIM/test_scim_users_update_attribute_live.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|