codemie-sdk-python 0.1.682__tar.gz → 0.1.684__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.682 → codemie_sdk_python-0.1.684}/PKG-INFO +1 -1
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/pyproject.toml +1 -1
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/analytics.py +41 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/utils/http.py +3 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/README.md +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/__init__.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/auth/__init__.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/auth/credentials.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/client/__init__.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/client/client.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/exceptions.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/__init__.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/a2a.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/activity_event.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/admin.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/analytics.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/assistant.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/categories.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/common.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/conversation.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/cost_center.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/datasource.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/errors.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/file_operation.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/guardrails.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/integration.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/llm.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/mcp_config.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/mermaid.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/project.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/skill.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/task.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/user.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/vendor_assistant.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/vendor_guardrail.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/vendor_knowledgebase.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/vendor_runtime.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/vendor_workflow.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/workflow.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/workflow_execution_payload.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/workflow_state.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/workflow_thoughts.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/workflow_transition.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/a2a.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/activity_event.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/admin.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/assistant.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/categories.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/codemie_guardrails.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/conversation.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/cost_center.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/customer_config_service.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/datasource.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/dynamic_config.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/files.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/integration.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/llm.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/mcp_configs.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/mermaid.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/project.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/project_budget_groups.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/skill.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/task.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/user.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/vendor_assistant.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/vendor_guardrail.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/vendor_knowledgebase.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/vendor_runtime.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/vendor_workflow.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/webhook.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/workflow.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/workflow_execution.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/workflow_execution_state.py +0 -0
- {codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/utils/__init__.py +0 -0
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/analytics.py
RENAMED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"""Analytics service implementation."""
|
|
2
2
|
|
|
3
|
+
import json
|
|
4
|
+
|
|
3
5
|
from ..models.analytics import (
|
|
4
6
|
AnalyticsQueryParams,
|
|
5
7
|
PaginatedAnalyticsQueryParams,
|
|
@@ -540,3 +542,42 @@ class AnalyticsService:
|
|
|
540
542
|
params=kwargs if kwargs else None,
|
|
541
543
|
wrap_response=False,
|
|
542
544
|
)
|
|
545
|
+
|
|
546
|
+
def send_cli_hook_events(self, events: list[dict]) -> dict:
|
|
547
|
+
"""POST /v1/analytics/cli-analytics/event-hooks — ingest CLI plugin hook events.
|
|
548
|
+
|
|
549
|
+
The events are sent as NDJSON (one JSON object per line), the format the
|
|
550
|
+
codemie-code analytics plugin uses. The authenticated user becomes the
|
|
551
|
+
events' sender. Events with an ``event_id`` already stored are skipped.
|
|
552
|
+
|
|
553
|
+
Args:
|
|
554
|
+
events: Hook events, e.g. ``{"type": "agent.session.start", "session_id": ...}``
|
|
555
|
+
|
|
556
|
+
Returns:
|
|
557
|
+
Ingest response body (an empty object on success)
|
|
558
|
+
"""
|
|
559
|
+
body = "\n".join(json.dumps(event) for event in events) + "\n"
|
|
560
|
+
return self._api.post(
|
|
561
|
+
"/v1/analytics/cli-analytics/event-hooks",
|
|
562
|
+
dict,
|
|
563
|
+
data=body.encode("utf-8"),
|
|
564
|
+
extra_headers={"Content-Type": "application/x-ndjson"},
|
|
565
|
+
wrap_response=False,
|
|
566
|
+
)
|
|
567
|
+
|
|
568
|
+
def get_cli_sessions(self, **kwargs) -> dict:
|
|
569
|
+
"""GET /v1/analytics/cli-analytics/sessions — CLI Analytics session list.
|
|
570
|
+
|
|
571
|
+
Args:
|
|
572
|
+
**kwargs: Query parameters (time_period, start_date, end_date, users,
|
|
573
|
+
projects, page, per_page, sort_by, search, framework, branch)
|
|
574
|
+
|
|
575
|
+
Returns:
|
|
576
|
+
Response with ``data.sessions`` (one row per session) and paging fields
|
|
577
|
+
"""
|
|
578
|
+
return self._api.get(
|
|
579
|
+
"/v1/analytics/cli-analytics/sessions",
|
|
580
|
+
dict,
|
|
581
|
+
params=kwargs if kwargs else None,
|
|
582
|
+
wrap_response=False,
|
|
583
|
+
)
|
|
@@ -199,6 +199,7 @@ class ApiRequestHandler:
|
|
|
199
199
|
raise_on_error: bool = True,
|
|
200
200
|
extra_headers: dict[str, str] | None = None,
|
|
201
201
|
include_auth: bool = True,
|
|
202
|
+
data: str | bytes | None = None,
|
|
202
203
|
) -> T:
|
|
203
204
|
"""Makes a POST request and parses the response.
|
|
204
205
|
|
|
@@ -212,6 +213,7 @@ class ApiRequestHandler:
|
|
|
212
213
|
raise_on_error: Whether to raise exception on HTTP error status codes
|
|
213
214
|
extra_headers: Optional additional HTTP headers to include (e.g., X-* for MCP propagation)
|
|
214
215
|
include_auth: Whether to include the Authorization header
|
|
216
|
+
data: Raw request body for non-JSON payloads; set its Content-Type via extra_headers
|
|
215
217
|
"""
|
|
216
218
|
if json_data:
|
|
217
219
|
logger.debug(f"Request body: {json_data}")
|
|
@@ -224,6 +226,7 @@ class ApiRequestHandler:
|
|
|
224
226
|
url=f"{self._base_url}{endpoint}",
|
|
225
227
|
headers=headers,
|
|
226
228
|
json=json_data,
|
|
229
|
+
data=data,
|
|
227
230
|
params=params,
|
|
228
231
|
verify=self._verify_ssl,
|
|
229
232
|
stream=stream,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/auth/credentials.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/client/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/activity_event.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/analytics.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/assistant.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/categories.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/conversation.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/cost_center.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/datasource.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/file_operation.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/guardrails.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/integration.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/mcp_config.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.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/vendor_assistant.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/vendor_guardrail.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/vendor_runtime.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/vendor_workflow.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/workflow.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/models/workflow_state.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/activity_event.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/assistant.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/categories.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/conversation.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/cost_center.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/datasource.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/dynamic_config.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/integration.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/mcp_configs.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/mermaid.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/project.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.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/vendor_runtime.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/webhook.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.682 → codemie_sdk_python-0.1.684}/src/codemie_sdk/services/workflow.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|