codemie-sdk-python 0.1.394__tar.gz → 0.1.396__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.
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/PKG-INFO +1 -1
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/pyproject.toml +1 -1
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/auth/credentials.py +18 -1
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/client/client.py +6 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/README.md +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/__init__.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/auth/__init__.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/client/__init__.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/exceptions.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/__init__.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/admin.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/analytics.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/assistant.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/categories.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/common.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/conversation.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/datasource.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/errors.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/file_operation.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/guardrails.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/integration.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/llm.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/mermaid.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/skill.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/task.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/user.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/vendor_assistant.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/vendor_guardrail.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/vendor_knowledgebase.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/vendor_workflow.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/workflow.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/workflow_execution_payload.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/workflow_state.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/workflow_thoughts.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/admin.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/analytics.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/assistant.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/categories.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/codemie_guardrails.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/conversation.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/datasource.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/files.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/integration.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/llm.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/mermaid.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/skill.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/task.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/user.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/vendor_assistant.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/vendor_guardrail.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/vendor_knowledgebase.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/vendor_workflow.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/webhook.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/workflow.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/workflow_execution.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/workflow_execution_state.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/utils/__init__.py +0 -0
- {codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/utils/http.py +0 -0
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/auth/credentials.py
RENAMED
|
@@ -15,6 +15,8 @@ class KeycloakCredentials:
|
|
|
15
15
|
client_secret: Optional[str] = None,
|
|
16
16
|
username: Optional[str] = None,
|
|
17
17
|
password: Optional[str] = None,
|
|
18
|
+
external_token: Optional[str] = None,
|
|
19
|
+
external_idp: Optional[str] = None,
|
|
18
20
|
verify_ssl: bool = True,
|
|
19
21
|
):
|
|
20
22
|
"""Initialize Keycloak credentials.
|
|
@@ -26,6 +28,8 @@ class KeycloakCredentials:
|
|
|
26
28
|
client_secret: Client secret (optional if using username/password)
|
|
27
29
|
username: Username/email for password grant (optional)
|
|
28
30
|
password: Password for password grant (optional)
|
|
31
|
+
external_token: External token for authentication (optional)
|
|
32
|
+
external_idp: Identity provider ID to validate token (optional)
|
|
29
33
|
verify_ssl: Whether to verify SSL certificates (default: True)
|
|
30
34
|
"""
|
|
31
35
|
self.server_url = server_url.rstrip("/")
|
|
@@ -34,12 +38,16 @@ class KeycloakCredentials:
|
|
|
34
38
|
self.client_secret = client_secret
|
|
35
39
|
self.username = username
|
|
36
40
|
self.password = password
|
|
41
|
+
self.external_token = external_token
|
|
42
|
+
self.external_idp = external_idp
|
|
37
43
|
self.verify_ssl = verify_ssl
|
|
38
44
|
|
|
39
45
|
def get_token(self) -> str:
|
|
40
46
|
"""Get access token using either client credentials or password grant."""
|
|
41
47
|
if not (
|
|
42
|
-
(self.client_id and self.client_secret)
|
|
48
|
+
(self.client_id and self.client_secret)
|
|
49
|
+
or (self.username and self.password)
|
|
50
|
+
or (self.external_token and self.external_idp)
|
|
43
51
|
):
|
|
44
52
|
raise ValueError(
|
|
45
53
|
"Either client credentials (client_id, client_secret) or "
|
|
@@ -60,6 +68,15 @@ class KeycloakCredentials:
|
|
|
60
68
|
}
|
|
61
69
|
if self.client_secret:
|
|
62
70
|
payload["client_secret"] = self.client_secret
|
|
71
|
+
elif self.external_token and self.external_idp:
|
|
72
|
+
payload = {
|
|
73
|
+
"client_id": self.client_id,
|
|
74
|
+
"client_secret": self.client_secret,
|
|
75
|
+
"grant_type": "urn:ietf:params:oauth:grant-type:token-exchange",
|
|
76
|
+
"subject_token": self.external_token,
|
|
77
|
+
"subject_issuer": self.external_idp,
|
|
78
|
+
"requested_token_type": "urn:ietf:params:oauth:token-type:access_token",
|
|
79
|
+
}
|
|
63
80
|
else:
|
|
64
81
|
# Use Client Credentials flow
|
|
65
82
|
payload = {
|
|
@@ -37,6 +37,8 @@ class CodeMieClient:
|
|
|
37
37
|
auth_client_secret: Optional[str] = None,
|
|
38
38
|
username: Optional[str] = None,
|
|
39
39
|
password: Optional[str] = None,
|
|
40
|
+
external_token: Optional[str] = None,
|
|
41
|
+
external_idp: Optional[str] = None,
|
|
40
42
|
verify_ssl: bool = True,
|
|
41
43
|
):
|
|
42
44
|
"""Initialize CodeMie client with authentication credentials.
|
|
@@ -49,6 +51,8 @@ class CodeMieClient:
|
|
|
49
51
|
auth_client_secret: Client secret for authentication (optional if using username/password)
|
|
50
52
|
username: Username/email for password grant (optional if using client credentials)
|
|
51
53
|
password: Password for password grant (optional if using client credentials)
|
|
54
|
+
external_token: External token for authentication (optional, replaces username/password)
|
|
55
|
+
external_idp: Identity provider ID to validate extern_token with (optional, required if using external_token)
|
|
52
56
|
verify_ssl: Whether to verify SSL certificates (default: True)
|
|
53
57
|
"""
|
|
54
58
|
self.auth = KeycloakCredentials(
|
|
@@ -58,6 +62,8 @@ class CodeMieClient:
|
|
|
58
62
|
client_secret=auth_client_secret,
|
|
59
63
|
username=username,
|
|
60
64
|
password=password,
|
|
65
|
+
external_token=external_token,
|
|
66
|
+
external_idp=external_idp,
|
|
61
67
|
verify_ssl=verify_ssl,
|
|
62
68
|
)
|
|
63
69
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/client/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/analytics.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/assistant.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/categories.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/conversation.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/datasource.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/file_operation.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/guardrails.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/integration.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/vendor_assistant.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/vendor_guardrail.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/vendor_workflow.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/workflow.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/models/workflow_state.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/analytics.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/assistant.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/categories.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/conversation.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/datasource.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/integration.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/mermaid.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
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/webhook.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.394 → codemie_sdk_python-0.1.396}/src/codemie_sdk/services/workflow.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|