Tags: makeplane/plane-python-sdk
Tags
feat: add dependency and custom relation sub-resources (#50) * feat: add support for work item dependencies and custom relations * chore: add level attribute to CreateWorkItemType and UpdateWorkItemType models * refactor: update work item relations endpoints to use direct identifiers for removal * chore: implement pagination for work item relation definitions endpoint * chore: add optional dependencies for development and enhance test dependency management * fix: update search parameter key and change sequence_id type to int in work item model
feat: rich filters + pql on work-item list endpoints, add list_worksp… …ace [WEB-7393][PAI-1461] (#37) * feat: rich `filters` + `pql` on work-item list endpoints, add `list_workspace` Expose the new external API's structured filtering capability on every work-item list method in the SDK. - WorkItemQueryParams now accepts `filters: dict[str, Any] | None` (the existing `pql: str | None` field is unchanged). A small `_prepare_work_item_params` helper JSON-encodes `filters` into the `filters=` query string the API expects. - New `WorkItems.list_workspace(workspace_slug, params)` calling `GET /workspaces/<slug>/work-items/` — paginated, total_results, spans every project the caller can view. - `WorkItems.list` and `WorkItems.list_archived` now route through `_prepare_work_item_params`, so `filters` and `pql` work uniformly. - `Cycles.list_work_items` and `Modules.list_work_items` accept `WorkItemQueryParams` (typed path) with the same serialization, and still accept a plain `Mapping[str, Any]` for backwards compatibility. - Real-API unit tests for `filters` on `list`, plus `list_workspace` with and without `filters`. - Bump version to 0.2.13. Backend: makeplane/plane-ee#7376 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * test: tighten `test_list_workspace_work_items_with_filters` assertion Drop the `or filtered.total_results > 0` fallback (which could pass even when filtering was a no-op) and assert directly that every returned item has `priority == "urgent"` — that's the property the test is meant to prove. Addresses CodeRabbit review. * fix: JSON-encode `filters` for the Mapping input path too Copilot caught a real bug: `Cycles.list_work_items` / `Modules.list_work_items` accept a plain `Mapping[str, Any]` for BC, but when callers passed `filters` as a dict through that path the SDK forwarded it to `requests` unchanged. The API expects `filters` as a JSON-encoded string, so the request would produce an invalid query parameter. - Extend `prepare_work_item_params` (renamed from `_prepare_work_item_params` since it's now used across resources, no longer private to the work_items module) to accept either a `WorkItemQueryParams` DTO or a plain mapping, and normalise `filters` to a JSON string in both paths. - Simplify `Cycles.list_work_items` and `Modules.list_work_items` to use the unified helper — drops the `isinstance` branch. - Fix README: `PaginatedQueryParams` is cursor-based (cursor, per_page), not (per_page, page) — that combination has never existed in the model. Addresses Copilot review on PR #37. --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com> Co-authored-by: akhil-vamshi-konam <konamakhilvamshi@gmail.com>
[SILO-1276] feat: add work item page links, page listing, intake stat… …us, and archive methods (#36) * feat: add work item pages API and models * feat: add methods to list workspace and project pages * fix: update params type in WorkItemPages to use Mapping for better type safety * chore: add update status method for intake work items and list archived work items method for work items * chore: add title field to CreateWorkItemLink * chore: add delete methods for workspace and project pages
[WEB-6815] chore: added support for pql (#27) * chore: added support for pql params * chore: test cases * fix: test cases * fix: test cases * fix: update docs string * fix: update test cases Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * chore: bumped the version to 0.2.9 --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
PreviousNext