codemie-sdk-python 0.1.314__tar.gz → 0.1.316__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.314 → codemie_sdk_python-0.1.316}/PKG-INFO +1 -1
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/pyproject.toml +1 -1
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/__init__.py +16 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/client/client.py +7 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/assistant.py +11 -1
- codemie_sdk_python-0.1.316/src/codemie_sdk/models/categories.py +71 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/conversation.py +4 -2
- codemie_sdk_python-0.1.316/src/codemie_sdk/services/categories.py +146 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/conversation.py +1 -1
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/README.md +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/auth/__init__.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/auth/credentials.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/client/__init__.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/exceptions.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/__init__.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/admin.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/analytics.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/common.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/datasource.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/file_operation.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/guardrails.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/integration.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/llm.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/mermaid.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/task.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/user.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/vendor_assistant.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/vendor_guardrail.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/vendor_knowledgebase.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/vendor_workflow.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/workflow.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/workflow_execution_payload.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/workflow_state.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/workflow_thoughts.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/admin.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/analytics.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/assistant.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/codemie_guardrails.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/datasource.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/files.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/integration.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/llm.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/mermaid.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/task.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/user.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/vendor_assistant.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/vendor_guardrail.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/vendor_knowledgebase.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/vendor_workflow.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/webhook.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/workflow.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/workflow_execution.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/workflow_execution_state.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/utils/__init__.py +0 -0
- {codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/utils/http.py +0 -0
|
@@ -107,6 +107,15 @@ from .models.mermaid import (
|
|
|
107
107
|
ResponseType,
|
|
108
108
|
)
|
|
109
109
|
from .services.mermaid import MermaidService
|
|
110
|
+
from .models.categories import (
|
|
111
|
+
Category,
|
|
112
|
+
CategoryCreateRequest,
|
|
113
|
+
CategoryUpdateRequest,
|
|
114
|
+
CategoryResponse,
|
|
115
|
+
CategoryListResponse,
|
|
116
|
+
CategoryListMetadata,
|
|
117
|
+
)
|
|
118
|
+
from .services.categories import CategoryService
|
|
110
119
|
|
|
111
120
|
__version__ = "0.2.12"
|
|
112
121
|
__all__ = [
|
|
@@ -186,4 +195,11 @@ __all__ = [
|
|
|
186
195
|
"ContentType",
|
|
187
196
|
"ResponseType",
|
|
188
197
|
"MermaidService",
|
|
198
|
+
"Category",
|
|
199
|
+
"CategoryCreateRequest",
|
|
200
|
+
"CategoryUpdateRequest",
|
|
201
|
+
"CategoryResponse",
|
|
202
|
+
"CategoryListResponse",
|
|
203
|
+
"CategoryListMetadata",
|
|
204
|
+
"CategoryService",
|
|
189
205
|
]
|
|
@@ -6,6 +6,7 @@ from ..auth.credentials import KeycloakCredentials
|
|
|
6
6
|
from ..services.admin import AdminService
|
|
7
7
|
from ..services.analytics import AnalyticsService
|
|
8
8
|
from ..services.assistant import AssistantService
|
|
9
|
+
from ..services.categories import CategoryService
|
|
9
10
|
from ..services.conversation import ConversationService
|
|
10
11
|
from ..services.datasource import DatasourceService
|
|
11
12
|
from ..services.llm import LLMService
|
|
@@ -80,6 +81,9 @@ class CodeMieClient:
|
|
|
80
81
|
self.assistants = AssistantService(
|
|
81
82
|
self._api_domain, self._token, verify_ssl=verify_ssl
|
|
82
83
|
)
|
|
84
|
+
self.categories = CategoryService(
|
|
85
|
+
self._api_domain, self._token, verify_ssl=verify_ssl
|
|
86
|
+
)
|
|
83
87
|
self.llms = LLMService(self._api_domain, self._token, verify_ssl=verify_ssl)
|
|
84
88
|
self.mermaid = MermaidService(
|
|
85
89
|
self._api_domain, self._token, verify_ssl=verify_ssl
|
|
@@ -151,6 +155,9 @@ class CodeMieClient:
|
|
|
151
155
|
self.assistants = AssistantService(
|
|
152
156
|
self._api_domain, self._token, verify_ssl=self._verify_ssl
|
|
153
157
|
)
|
|
158
|
+
self.categories = CategoryService(
|
|
159
|
+
self._api_domain, self._token, verify_ssl=self._verify_ssl
|
|
160
|
+
)
|
|
154
161
|
self.llms = LLMService(
|
|
155
162
|
self._api_domain, self._token, verify_ssl=self._verify_ssl
|
|
156
163
|
)
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/assistant.py
RENAMED
|
@@ -105,6 +105,13 @@ class MCPServerConfig(BaseModel):
|
|
|
105
105
|
auth_token: Optional[str] = Field(
|
|
106
106
|
None, description="Authentication token for the MCP-Connect server"
|
|
107
107
|
)
|
|
108
|
+
single_usage: bool = Field(
|
|
109
|
+
False,
|
|
110
|
+
description="Whether this MCP server configuration is for single use only",
|
|
111
|
+
)
|
|
112
|
+
tools: Optional[list[str]] = Field(
|
|
113
|
+
None, description="List of tool names available in this MCP server"
|
|
114
|
+
)
|
|
108
115
|
|
|
109
116
|
|
|
110
117
|
class MCPServerDetails(BaseModel):
|
|
@@ -113,14 +120,17 @@ class MCPServerDetails(BaseModel):
|
|
|
113
120
|
name: str
|
|
114
121
|
description: Optional[str]
|
|
115
122
|
enabled: bool
|
|
123
|
+
mcp_config_id: Optional[str] = None
|
|
116
124
|
config: Optional[MCPServerConfig] = None
|
|
117
125
|
mcp_connect_url: Optional[str] = None
|
|
118
126
|
tools_tokens_size_limit: Optional[int] = None
|
|
119
127
|
command: Optional[str] = None
|
|
120
128
|
arguments: Optional[str] = None
|
|
121
129
|
settings: Optional[Integration] = None
|
|
122
|
-
mcp_connect_auth_token: Optional[Integration] = None
|
|
123
130
|
integration_alias: Optional[str] = None
|
|
131
|
+
mcp_connect_auth_token: Optional[Integration] = None
|
|
132
|
+
resolve_dynamic_values_in_arguments: bool = False
|
|
133
|
+
tools: Optional[list[str]] = None
|
|
124
134
|
|
|
125
135
|
|
|
126
136
|
class SystemPromptHistory(BaseModel):
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"""Models for category-related data structures."""
|
|
2
|
+
|
|
3
|
+
from typing import List, Optional
|
|
4
|
+
|
|
5
|
+
from pydantic import BaseModel, Field, ConfigDict
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class Category(BaseModel):
|
|
9
|
+
"""Model for assistant category."""
|
|
10
|
+
|
|
11
|
+
model_config = ConfigDict(extra="ignore")
|
|
12
|
+
|
|
13
|
+
id: str = Field(..., description="Category ID")
|
|
14
|
+
name: str = Field(..., description="Category display name")
|
|
15
|
+
description: Optional[str] = Field(None, description="Category description")
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class CategoryCreateRequest(BaseModel):
|
|
19
|
+
"""Model for creating a new category."""
|
|
20
|
+
|
|
21
|
+
model_config = ConfigDict(extra="ignore")
|
|
22
|
+
|
|
23
|
+
name: str = Field(..., description="Category name")
|
|
24
|
+
description: Optional[str] = Field(None, description="Category description")
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
class CategoryUpdateRequest(BaseModel):
|
|
28
|
+
"""Model for updating an existing category."""
|
|
29
|
+
|
|
30
|
+
model_config = ConfigDict(extra="ignore")
|
|
31
|
+
|
|
32
|
+
name: str = Field(..., description="Category name")
|
|
33
|
+
description: Optional[str] = Field(None, description="Category description")
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
class CategoryResponse(BaseModel):
|
|
37
|
+
"""Model for category response with assistant counts."""
|
|
38
|
+
|
|
39
|
+
model_config = ConfigDict(extra="ignore")
|
|
40
|
+
|
|
41
|
+
id: str = Field(..., description="Category ID")
|
|
42
|
+
name: str = Field(..., description="Category name")
|
|
43
|
+
description: Optional[str] = Field(None, description="Category description")
|
|
44
|
+
marketplace_count: int = Field(
|
|
45
|
+
default=0, description="Number of marketplace assistants in this category"
|
|
46
|
+
)
|
|
47
|
+
project_count: int = Field(
|
|
48
|
+
default=0, description="Number of project assistants in this category"
|
|
49
|
+
)
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
class CategoryListMetadata(BaseModel):
|
|
53
|
+
"""Metadata for paginated category list response."""
|
|
54
|
+
|
|
55
|
+
model_config = ConfigDict(extra="ignore")
|
|
56
|
+
|
|
57
|
+
page: int = Field(..., description="Current page number (0-indexed)")
|
|
58
|
+
per_page: int = Field(..., description="Items per page")
|
|
59
|
+
total: int = Field(..., description="Total number of categories")
|
|
60
|
+
total_pages: int = Field(..., description="Total number of pages")
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
class CategoryListResponse(BaseModel):
|
|
64
|
+
"""Model for paginated category list response."""
|
|
65
|
+
|
|
66
|
+
model_config = ConfigDict(extra="ignore")
|
|
67
|
+
|
|
68
|
+
items: List[CategoryResponse] = Field(
|
|
69
|
+
default_factory=list, description="List of categories with counts"
|
|
70
|
+
)
|
|
71
|
+
metadata: CategoryListMetadata = Field(..., description="Pagination metadata")
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/conversation.py
RENAMED
|
@@ -83,7 +83,7 @@ class HistoryItem(BaseModel):
|
|
|
83
83
|
fileNames: List[str]
|
|
84
84
|
assistantId: Optional[str] = None
|
|
85
85
|
thoughts: Optional[List[Thought]] = Field(default_factory=list)
|
|
86
|
-
workflowExecutionRef: Optional[str] = None
|
|
86
|
+
workflowExecutionRef: Optional[Union[str, bool]] = None
|
|
87
87
|
executionId: Optional[str] = None
|
|
88
88
|
|
|
89
89
|
|
|
@@ -144,7 +144,9 @@ class ConversationCreateRequest(BaseModel):
|
|
|
144
144
|
initial_assistant_id: Optional[str] = None
|
|
145
145
|
folder: Optional[str] = None
|
|
146
146
|
mcp_server_single_usage: Optional[bool] = False
|
|
147
|
-
|
|
147
|
+
is_workflow_conversation: Optional[bool] = Field(
|
|
148
|
+
default=None, serialization_alias="is_workflow"
|
|
149
|
+
)
|
|
148
150
|
|
|
149
151
|
|
|
150
152
|
class ConversationDetails(BaseModel):
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
"""Category service implementation."""
|
|
2
|
+
|
|
3
|
+
from typing import List
|
|
4
|
+
|
|
5
|
+
from ..models.categories import (
|
|
6
|
+
Category,
|
|
7
|
+
CategoryCreateRequest,
|
|
8
|
+
CategoryUpdateRequest,
|
|
9
|
+
CategoryResponse,
|
|
10
|
+
CategoryListResponse,
|
|
11
|
+
)
|
|
12
|
+
from ..utils import ApiRequestHandler
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class CategoryService:
|
|
16
|
+
"""Service for managing CodeMie assistant categories."""
|
|
17
|
+
|
|
18
|
+
def __init__(self, api_domain: str, token: str, verify_ssl: bool = True):
|
|
19
|
+
"""Initialize the category service.
|
|
20
|
+
|
|
21
|
+
Args:
|
|
22
|
+
api_domain: Base URL for the CodeMie API
|
|
23
|
+
token: Authentication token
|
|
24
|
+
verify_ssl: Whether to verify SSL certificates
|
|
25
|
+
"""
|
|
26
|
+
self._api = ApiRequestHandler(api_domain, token, verify_ssl)
|
|
27
|
+
|
|
28
|
+
def get_categories(self) -> List[Category]:
|
|
29
|
+
"""Get all available assistant categories (legacy, non-paginated).
|
|
30
|
+
|
|
31
|
+
This endpoint maintains backward compatibility with existing clients.
|
|
32
|
+
For paginated access with assistant counts, use list_categories().
|
|
33
|
+
|
|
34
|
+
Returns:
|
|
35
|
+
List of all categories
|
|
36
|
+
"""
|
|
37
|
+
return self._api.get("/v1/assistants/categories", List[Category])
|
|
38
|
+
|
|
39
|
+
def list_categories(
|
|
40
|
+
self, page: int = 0, per_page: int = 10
|
|
41
|
+
) -> CategoryListResponse:
|
|
42
|
+
"""Get paginated list of categories with assistant counts.
|
|
43
|
+
|
|
44
|
+
Returns counts separated by marketplace vs project assistants.
|
|
45
|
+
This is the preferred endpoint for admin UI with pagination support.
|
|
46
|
+
|
|
47
|
+
Args:
|
|
48
|
+
page: Page number (0-indexed, default: 0)
|
|
49
|
+
per_page: Number of items per page (1-100, default: 10)
|
|
50
|
+
|
|
51
|
+
Returns:
|
|
52
|
+
Paginated response with categories and metadata
|
|
53
|
+
"""
|
|
54
|
+
params = {"page": page, "per_page": per_page}
|
|
55
|
+
return self._api.get(
|
|
56
|
+
"/v1/assistants/categories/list", CategoryListResponse, params=params
|
|
57
|
+
)
|
|
58
|
+
|
|
59
|
+
def get_category(self, category_id: str) -> CategoryResponse:
|
|
60
|
+
"""Get a specific category by ID with assistant counts.
|
|
61
|
+
|
|
62
|
+
Args:
|
|
63
|
+
category_id: Category ID (humanized, e.g., "migration_modernization")
|
|
64
|
+
|
|
65
|
+
Returns:
|
|
66
|
+
Category details with assistant counts
|
|
67
|
+
|
|
68
|
+
Raises:
|
|
69
|
+
NotFoundError: Category not found
|
|
70
|
+
"""
|
|
71
|
+
return self._api.get(
|
|
72
|
+
f"/v1/assistants/categories/{category_id}", CategoryResponse
|
|
73
|
+
)
|
|
74
|
+
|
|
75
|
+
def create_category(self, request: CategoryCreateRequest) -> CategoryResponse:
|
|
76
|
+
"""Create a new category. Admin access required.
|
|
77
|
+
|
|
78
|
+
The category ID will be auto-generated from the name using humanization logic:
|
|
79
|
+
- Special characters are removed
|
|
80
|
+
- Spaces are replaced with underscores
|
|
81
|
+
- All text is lowercased
|
|
82
|
+
|
|
83
|
+
Example: "Migration & Modernization" → "migration_modernization"
|
|
84
|
+
|
|
85
|
+
Args:
|
|
86
|
+
request: Category creation request with name and description
|
|
87
|
+
|
|
88
|
+
Returns:
|
|
89
|
+
Created category with assistant counts (will be 0 for new categories)
|
|
90
|
+
|
|
91
|
+
Raises:
|
|
92
|
+
ApiError: Invalid request data or duplicate category ID (400)
|
|
93
|
+
ApiError: User is not an admin (403)
|
|
94
|
+
"""
|
|
95
|
+
return self._api.post(
|
|
96
|
+
"/v1/assistants/categories",
|
|
97
|
+
CategoryResponse,
|
|
98
|
+
json_data=request.model_dump(exclude_none=True),
|
|
99
|
+
)
|
|
100
|
+
|
|
101
|
+
def update_category(
|
|
102
|
+
self, category_id: str, request: CategoryUpdateRequest
|
|
103
|
+
) -> CategoryResponse:
|
|
104
|
+
"""Update an existing category. Admin access required.
|
|
105
|
+
|
|
106
|
+
If assistants are assigned to this category, the operation will succeed
|
|
107
|
+
but the response will include the count of affected assistants.
|
|
108
|
+
The frontend should display a warning to the admin when editing categories
|
|
109
|
+
with assigned assistants.
|
|
110
|
+
|
|
111
|
+
Args:
|
|
112
|
+
category_id: Category ID to update
|
|
113
|
+
request: Category update request with new name and description
|
|
114
|
+
|
|
115
|
+
Returns:
|
|
116
|
+
Updated category with current assistant counts
|
|
117
|
+
|
|
118
|
+
Raises:
|
|
119
|
+
ApiError: User is not an admin (403)
|
|
120
|
+
NotFoundError: Category not found (404)
|
|
121
|
+
"""
|
|
122
|
+
return self._api.put(
|
|
123
|
+
f"/v1/assistants/categories/{category_id}",
|
|
124
|
+
CategoryResponse,
|
|
125
|
+
json_data=request.model_dump(exclude_none=True),
|
|
126
|
+
)
|
|
127
|
+
|
|
128
|
+
def delete_category(self, category_id: str) -> dict:
|
|
129
|
+
"""Delete a category. Admin access required.
|
|
130
|
+
|
|
131
|
+
This operation will fail with a 409 Conflict error if any assistants
|
|
132
|
+
(marketplace or project) are assigned to this category.
|
|
133
|
+
The admin must first remove all assistants from the category before deletion.
|
|
134
|
+
|
|
135
|
+
Args:
|
|
136
|
+
category_id: Category ID to delete
|
|
137
|
+
|
|
138
|
+
Returns:
|
|
139
|
+
Empty dict on successful deletion (204 No Content)
|
|
140
|
+
|
|
141
|
+
Raises:
|
|
142
|
+
ApiError: User is not an admin (403)
|
|
143
|
+
NotFoundError: Category not found (404)
|
|
144
|
+
ApiError: Category has assigned assistants and cannot be deleted (409)
|
|
145
|
+
"""
|
|
146
|
+
return self._api.delete(f"/v1/assistants/categories/{category_id}", dict)
|
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/auth/credentials.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/client/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/analytics.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/datasource.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/file_operation.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/guardrails.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/integration.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/vendor_assistant.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/vendor_guardrail.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/vendor_workflow.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/workflow.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/models/workflow_state.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/analytics.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/assistant.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/datasource.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/integration.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/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
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/webhook.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.314 → codemie_sdk_python-0.1.316}/src/codemie_sdk/services/workflow.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|