Tags: makeplane/plane-python-sdk
Tags
feat: initiative work items, rich text values, and customer property … …enums (#72) * feat: introduce InitiativeWorkItems API client * fix: update WorkItems API to use exclude_unset for model serialization * refactor: update customer property models to use new enums for property and relation types
feat: add page update and archive APIs to Python SDK (#67) * feat: add update and archive functionality for workspace and project pages * docs: update API documentation for page deletion and enhance test descriptions * feat: extend Page model with additional fields for access control and collection management * chore: add optional description_html field to CreateProject and UpdateProject models
feat: add workspace governance resources (workspace states, workspace… … workflows, type governance) (#66) * feat: add workspace governance resources (workspace states, workspace workflows, type governance) Plane's workspace governance moves states, workflows, and work item type governance to a workspace-level catalog (dual-mode, per-workspace opt-in). This adds the corresponding public-API coverage: - workspace_states: list/retrieve (dual-mode reads), create/update/delete against the workspace states catalog, plus external-id lookup - workspace_workflows: catalog CRUD, usage report, activity log, chain state management (add/update/remove/mark-default), state transitions, and transition hooks (incl. webhook secret regeneration and executions) - work_item_type_governance: governance mode (any/constrained/required), change previews, project pins, project-side effective workflows and workflow picks, and workflow fallback previews - WorkspaceFeature: type the new work_item_types, releases, and read-only states_owned_by_workspace fields (the governed-mode detection flag) Project workflows parity housekeeping: retrieve/delete/activities, chain state list/update/transfer, transition retrieve, transition hooks, and work item workflow approval. * fix: address review feedback on workspace governance resources - Append trailing slashes to every new endpoint path (URL convention) - Rename get_project_pick/set_project_pick to retrieve_project_pick/ update_project_pick (CRUD verb convention) - submit_work_item_approval now takes a SubmitWorkItemApproval DTO and returns a typed WorkItemApprovalResult - Export WorkspaceWorkflowState, WorkspaceWorkflowTransition, WorkspaceWorkflowUsageProject, and the new approval models from the package root; export CatalogGroupEnum from plane.models - README: capture created IDs in the workspace-workflow example and document placeholder IDs in the governance example - Tests: enter try/finally immediately after each resource creation so failed setup or assertions cannot leak catalog data * refactor: restructure type governance as a package with sub-resources Match the resource-package convention used by collections/ and releases/: a base.py for the top-level class plus one file per sub-resource, each exposing plain CRUD verbs instead of prefixed method families. work_item_type_governance/ base.py -> WorkItemTypeGovernance: retrieve/update/preview pins.py -> WorkItemTypeWorkflowPins: list/create/delete project_workflows.py -> ProjectTypeWorkflows: list/retrieve/ retrieve_pick/update_pick/preview_fallback Call sites become client.work_item_type_governance.pins.list(...) and .project_workflows.update_pick(...), replacing list_pins/create_pins/ delete_pin/list_project_type_workflows/retrieve_project_type_workflow/ retrieve_project_pick/update_project_pick. Also narrow the new packages' __init__ exports to the top-level resource class only, as collections/ and releases/ do; sub-resources are reached through the parent (the pre-existing workflows/ package keeps its own exports). Response models stay exported from the package root. * fix: validate the workflow-pick response with a typed model update_pick was the only resource method returning an unvalidated dict. Add ProjectWorkflowPickResult (mirroring WorkItemApprovalResult for the analogous {"state_id": ...} approval response), normalize the scalar fallback into a mapping, and validate through it. * fix: fill state_id on workspace chain rows
feat: add collections resource (#64) * feat: add Collections resource client Adds a full Collections resource (create/list/retrieve/update/delete collections, add/list/search/move/remove pages within a collection, and collection member CRUD) matching the new external Collections API, plus `collection_id`/`parent_id` on CreatePage so pages can be created directly inside a collection or as a sub-page. * fix(tests): assert sub-page via parent_id filter — unfiltered collection listing returns root-branch pages only * bumpup version to 0.2.21 * resolve review comments * resolve coderabbit comments * test: drop unsupported sub-page nesting assertions Sub-page creation is not supported by the public API (CreatePage.parent_id is accepted but not honored on creation), so the test now covers only the supported page-in-collection behavior.
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
PreviousNext