taskadence 0.1.0__py3-none-any.whl
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.
- taskadence/__init__.py +100 -0
- taskadence/_brand.py +87 -0
- taskadence/_client.py +144 -0
- taskadence/_core.py +563 -0
- taskadence/_generated/__init__.py +11 -0
- taskadence/_generated/api/__init__.py +3 -0
- taskadence/_generated/api/audit/__init__.py +3 -0
- taskadence/_generated/api/audit/audit_export.py +407 -0
- taskadence/_generated/api/audit/audit_export_json.py +422 -0
- taskadence/_generated/api/audit/audit_list.py +441 -0
- taskadence/_generated/api/availability/__init__.py +3 -0
- taskadence/_generated/api/availability/availability_create.py +242 -0
- taskadence/_generated/api/availability/availability_delete.py +227 -0
- taskadence/_generated/api/availability/availability_range.py +293 -0
- taskadence/_generated/api/availability/availability_update.py +260 -0
- taskadence/_generated/api/connected_apps/__init__.py +3 -0
- taskadence/_generated/api/connected_apps/connected_apps_delete.py +213 -0
- taskadence/_generated/api/connected_apps/connected_apps_list.py +304 -0
- taskadence/_generated/api/designations/__init__.py +3 -0
- taskadence/_generated/api/designations/designations_create.py +217 -0
- taskadence/_generated/api/designations/designations_delete.py +252 -0
- taskadence/_generated/api/designations/designations_list.py +433 -0
- taskadence/_generated/api/designations/designations_read.py +261 -0
- taskadence/_generated/api/designations/designations_replace.py +276 -0
- taskadence/_generated/api/designations/designations_set_visibility.py +254 -0
- taskadence/_generated/api/designations/designations_update.py +272 -0
- taskadence/_generated/api/goals/__init__.py +3 -0
- taskadence/_generated/api/goals/goals_create.py +246 -0
- taskadence/_generated/api/goals/goals_delete.py +252 -0
- taskadence/_generated/api/goals/goals_file_tasks.py +256 -0
- taskadence/_generated/api/goals/goals_list.py +338 -0
- taskadence/_generated/api/goals/goals_move.py +252 -0
- taskadence/_generated/api/goals/goals_org.py +249 -0
- taskadence/_generated/api/goals/goals_reorder.py +238 -0
- taskadence/_generated/api/goals/goals_replace.py +260 -0
- taskadence/_generated/api/goals/goals_unfile_task.py +241 -0
- taskadence/_generated/api/goals/goals_update.py +256 -0
- taskadence/_generated/api/health/__init__.py +3 -0
- taskadence/_generated/api/health/health_read.py +219 -0
- taskadence/_generated/api/mcp/__init__.py +3 -0
- taskadence/_generated/api/mcp/mcp_clients.py +237 -0
- taskadence/_generated/api/me/__init__.py +3 -0
- taskadence/_generated/api/me/me_read.py +243 -0
- taskadence/_generated/api/milestones/__init__.py +3 -0
- taskadence/_generated/api/milestones/milestones_create.py +252 -0
- taskadence/_generated/api/milestones/milestones_delete.py +254 -0
- taskadence/_generated/api/milestones/milestones_file_tasks.py +256 -0
- taskadence/_generated/api/milestones/milestones_list.py +338 -0
- taskadence/_generated/api/milestones/milestones_list_org.py +374 -0
- taskadence/_generated/api/milestones/milestones_move.py +256 -0
- taskadence/_generated/api/milestones/milestones_reorder.py +238 -0
- taskadence/_generated/api/milestones/milestones_replace.py +314 -0
- taskadence/_generated/api/milestones/milestones_unfile_task.py +245 -0
- taskadence/_generated/api/milestones/milestones_update.py +302 -0
- taskadence/_generated/api/oauth_clients/__init__.py +3 -0
- taskadence/_generated/api/oauth_clients/oauth_clients_create.py +223 -0
- taskadence/_generated/api/oauth_clients/oauth_clients_delete.py +221 -0
- taskadence/_generated/api/oauth_clients/oauth_clients_list.py +327 -0
- taskadence/_generated/api/oauth_clients/oauth_clients_read.py +236 -0
- taskadence/_generated/api/oauth_clients/oauth_clients_rotate_secret.py +213 -0
- taskadence/_generated/api/oauth_clients/oauth_clients_update.py +234 -0
- taskadence/_generated/api/organization_invites/__init__.py +3 -0
- taskadence/_generated/api/organization_invites/organization_invites_accept.py +213 -0
- taskadence/_generated/api/organization_invites/organization_invites_create.py +219 -0
- taskadence/_generated/api/organization_invites/organization_invites_delete.py +213 -0
- taskadence/_generated/api/organization_invites/organization_invites_list.py +383 -0
- taskadence/_generated/api/organization_invites/organization_invites_mine.py +332 -0
- taskadence/_generated/api/organization_invites/organization_invites_reject.py +213 -0
- taskadence/_generated/api/organization_invites/organization_invites_update.py +234 -0
- taskadence/_generated/api/organization_members/__init__.py +3 -0
- taskadence/_generated/api/organization_members/organization_members_delete.py +246 -0
- taskadence/_generated/api/organization_members/organization_members_list.py +395 -0
- taskadence/_generated/api/organization_members/organization_members_read.py +250 -0
- taskadence/_generated/api/organization_members/organization_members_replace.py +272 -0
- taskadence/_generated/api/organization_members/organization_members_update.py +268 -0
- taskadence/_generated/api/organizations/__init__.py +3 -0
- taskadence/_generated/api/organizations/organizations_access_review.py +244 -0
- taskadence/_generated/api/organizations/organizations_list.py +304 -0
- taskadence/_generated/api/organizations/organizations_read.py +236 -0
- taskadence/_generated/api/organizations/organizations_settings.py +236 -0
- taskadence/_generated/api/organizations/organizations_storage.py +244 -0
- taskadence/_generated/api/organizations/organizations_update_settings.py +262 -0
- taskadence/_generated/api/project_members/__init__.py +3 -0
- taskadence/_generated/api/project_members/project_members_create.py +219 -0
- taskadence/_generated/api/project_members/project_members_delete.py +246 -0
- taskadence/_generated/api/project_members/project_members_list.py +364 -0
- taskadence/_generated/api/project_members/project_members_read.py +250 -0
- taskadence/_generated/api/project_members/project_members_replace.py +276 -0
- taskadence/_generated/api/project_members/project_members_update.py +272 -0
- taskadence/_generated/api/project_resources/__init__.py +3 -0
- taskadence/_generated/api/project_resources/project_resources_create.py +239 -0
- taskadence/_generated/api/project_resources/project_resources_delete.py +252 -0
- taskadence/_generated/api/project_resources/project_resources_list.py +355 -0
- taskadence/_generated/api/project_resources/project_resources_read.py +256 -0
- taskadence/_generated/api/project_resources/project_resources_update.py +270 -0
- taskadence/_generated/api/project_resources/project_resources_upload.py +268 -0
- taskadence/_generated/api/project_stats/__init__.py +3 -0
- taskadence/_generated/api/project_stats/project_stats_read.py +236 -0
- taskadence/_generated/api/projects/__init__.py +3 -0
- taskadence/_generated/api/projects/projects_create.py +233 -0
- taskadence/_generated/api/projects/projects_delete.py +232 -0
- taskadence/_generated/api/projects/projects_list.py +386 -0
- taskadence/_generated/api/projects/projects_read.py +236 -0
- taskadence/_generated/api/projects/projects_reorder.py +235 -0
- taskadence/_generated/api/projects/projects_replace.py +252 -0
- taskadence/_generated/api/projects/projects_update.py +248 -0
- taskadence/_generated/api/releases/__init__.py +3 -0
- taskadence/_generated/api/releases/releases_whats_new.py +286 -0
- taskadence/_generated/api/sections/__init__.py +3 -0
- taskadence/_generated/api/sections/sections_create.py +221 -0
- taskadence/_generated/api/sections/sections_delete.py +217 -0
- taskadence/_generated/api/sections/sections_list.py +461 -0
- taskadence/_generated/api/sections/sections_reorder.py +228 -0
- taskadence/_generated/api/sections/sections_update.py +232 -0
- taskadence/_generated/api/service_accounts/__init__.py +3 -0
- taskadence/_generated/api/service_accounts/service_accounts_create.py +242 -0
- taskadence/_generated/api/service_accounts/service_accounts_delete.py +235 -0
- taskadence/_generated/api/service_accounts/service_accounts_list.py +319 -0
- taskadence/_generated/api/service_accounts/service_accounts_update.py +248 -0
- taskadence/_generated/api/sprints/__init__.py +3 -0
- taskadence/_generated/api/sprints/sprints_create.py +234 -0
- taskadence/_generated/api/sprints/sprints_delete.py +258 -0
- taskadence/_generated/api/sprints/sprints_list.py +323 -0
- taskadence/_generated/api/sprints/sprints_update.py +252 -0
- taskadence/_generated/api/task_attachments/__init__.py +3 -0
- taskadence/_generated/api/task_attachments/task_attachments_create.py +290 -0
- taskadence/_generated/api/task_attachments/task_attachments_delete.py +251 -0
- taskadence/_generated/api/task_attachments/task_attachments_list.py +334 -0
- taskadence/_generated/api/task_attachments/task_attachments_read.py +261 -0
- taskadence/_generated/api/task_attachments/task_attachments_update.py +279 -0
- taskadence/_generated/api/task_comments/__init__.py +3 -0
- taskadence/_generated/api/task_comments/task_comments_create.py +235 -0
- taskadence/_generated/api/task_comments/task_comments_delete.py +257 -0
- taskadence/_generated/api/task_comments/task_comments_list.py +339 -0
- taskadence/_generated/api/task_comments/task_comments_read.py +261 -0
- taskadence/_generated/api/task_comments/task_comments_reply.py +235 -0
- taskadence/_generated/api/task_comments/task_comments_update.py +275 -0
- taskadence/_generated/api/task_history/__init__.py +3 -0
- taskadence/_generated/api/task_history/task_history_list.py +339 -0
- taskadence/_generated/api/task_history/task_history_read.py +261 -0
- taskadence/_generated/api/tasks/__init__.py +3 -0
- taskadence/_generated/api/tasks/tasks_add_dependency.py +230 -0
- taskadence/_generated/api/tasks/tasks_add_subtask.py +230 -0
- taskadence/_generated/api/tasks/tasks_create.py +231 -0
- taskadence/_generated/api/tasks/tasks_delete.py +236 -0
- taskadence/_generated/api/tasks/tasks_list.py +1044 -0
- taskadence/_generated/api/tasks/tasks_read.py +236 -0
- taskadence/_generated/api/tasks/tasks_remove_dependency.py +223 -0
- taskadence/_generated/api/tasks/tasks_remove_subtask.py +223 -0
- taskadence/_generated/api/tasks/tasks_replace.py +274 -0
- taskadence/_generated/api/tasks/tasks_review.py +270 -0
- taskadence/_generated/api/tasks/tasks_set_milestone.py +262 -0
- taskadence/_generated/api/tasks/tasks_set_project.py +238 -0
- taskadence/_generated/api/tasks/tasks_set_section.py +246 -0
- taskadence/_generated/api/tasks/tasks_set_sprint.py +262 -0
- taskadence/_generated/api/tasks/tasks_update.py +262 -0
- taskadence/_generated/api/teams/__init__.py +3 -0
- taskadence/_generated/api/teams/teams_add_member.py +238 -0
- taskadence/_generated/api/teams/teams_create.py +221 -0
- taskadence/_generated/api/teams/teams_delete.py +282 -0
- taskadence/_generated/api/teams/teams_list.py +339 -0
- taskadence/_generated/api/teams/teams_list_tasks.py +373 -0
- taskadence/_generated/api/teams/teams_read.py +236 -0
- taskadence/_generated/api/teams/teams_remove_member.py +227 -0
- taskadence/_generated/api/teams/teams_replace.py +260 -0
- taskadence/_generated/api/teams/teams_replace_member.py +264 -0
- taskadence/_generated/api/teams/teams_update.py +248 -0
- taskadence/_generated/api/teams/teams_update_member.py +252 -0
- taskadence/_generated/api/tokens/__init__.py +3 -0
- taskadence/_generated/api/tokens/tokens_create.py +249 -0
- taskadence/_generated/api/tokens/tokens_delete.py +209 -0
- taskadence/_generated/api/tokens/tokens_list.py +327 -0
- taskadence/_generated/api/tokens/tokens_read.py +236 -0
- taskadence/_generated/api/tokens/tokens_rotate.py +219 -0
- taskadence/_generated/api/tokens/tokens_update.py +230 -0
- taskadence/_generated/api/uploads/__init__.py +3 -0
- taskadence/_generated/api/uploads/uploads_complete.py +311 -0
- taskadence/_generated/api/uploads/uploads_create.py +251 -0
- taskadence/_generated/api/view_pins/__init__.py +3 -0
- taskadence/_generated/api/view_pins/view_pins_list.py +315 -0
- taskadence/_generated/api/view_pins/view_pins_pin_project.py +230 -0
- taskadence/_generated/api/view_pins/view_pins_pin_view.py +213 -0
- taskadence/_generated/api/view_pins/view_pins_reorder.py +221 -0
- taskadence/_generated/api/view_pins/view_pins_unpin_project.py +213 -0
- taskadence/_generated/api/view_pins/view_pins_unpin_view.py +213 -0
- taskadence/_generated/api/views/__init__.py +3 -0
- taskadence/_generated/api/views/views_create.py +247 -0
- taskadence/_generated/api/views/views_delete.py +230 -0
- taskadence/_generated/api/views/views_duplicate.py +234 -0
- taskadence/_generated/api/views/views_list.py +367 -0
- taskadence/_generated/api/views/views_read.py +236 -0
- taskadence/_generated/api/views/views_rows.py +336 -0
- taskadence/_generated/api/views/views_update.py +254 -0
- taskadence/_generated/api/webhooks/__init__.py +3 -0
- taskadence/_generated/api/webhooks/webhooks_create.py +231 -0
- taskadence/_generated/api/webhooks/webhooks_delete.py +230 -0
- taskadence/_generated/api/webhooks/webhooks_deliveries.py +319 -0
- taskadence/_generated/api/webhooks/webhooks_delivery.py +254 -0
- taskadence/_generated/api/webhooks/webhooks_events.py +312 -0
- taskadence/_generated/api/webhooks/webhooks_list.py +323 -0
- taskadence/_generated/api/webhooks/webhooks_read.py +236 -0
- taskadence/_generated/api/webhooks/webhooks_replay.py +233 -0
- taskadence/_generated/api/webhooks/webhooks_rotate_secret.py +217 -0
- taskadence/_generated/api/webhooks/webhooks_test.py +221 -0
- taskadence/_generated/api/webhooks/webhooks_update.py +256 -0
- taskadence/_generated/client.py +272 -0
- taskadence/_generated/errors.py +18 -0
- taskadence/_generated/models/__init__.py +619 -0
- taskadence/_generated/models/access_review.py +167 -0
- taskadence/_generated/models/acknowledgement.py +73 -0
- taskadence/_generated/models/agent_task_review_enum.py +17 -0
- taskadence/_generated/models/audit_export_row.py +358 -0
- taskadence/_generated/models/audit_export_row_after_type_0.py +53 -0
- taskadence/_generated/models/audit_export_row_before_type_0.py +53 -0
- taskadence/_generated/models/audit_page.py +108 -0
- taskadence/_generated/models/audit_page_data_item.py +53 -0
- taskadence/_generated/models/authorization_server_metadata.py +218 -0
- taskadence/_generated/models/availability_create.py +92 -0
- taskadence/_generated/models/availability_deleted.py +78 -0
- taskadence/_generated/models/availability_entry.py +226 -0
- taskadence/_generated/models/availability_member.py +101 -0
- taskadence/_generated/models/availability_range.py +131 -0
- taskadence/_generated/models/availability_update.py +147 -0
- taskadence/_generated/models/body_upload_attachment_v1_task_attachments_post.py +175 -0
- taskadence/_generated/models/body_upload_resource_v1_project_resources_upload_post.py +139 -0
- taskadence/_generated/models/client_registration_response.py +199 -0
- taskadence/_generated/models/commit_type.py +25 -0
- taskadence/_generated/models/connected_app.py +243 -0
- taskadence/_generated/models/connected_app_revoked.py +93 -0
- taskadence/_generated/models/delivery_detail.py +405 -0
- taskadence/_generated/models/delivery_detail_attempt_log_item.py +53 -0
- taskadence/_generated/models/delivery_detail_payload.py +55 -0
- taskadence/_generated/models/delivery_detail_request_headers.py +55 -0
- taskadence/_generated/models/delivery_detail_status.py +19 -0
- taskadence/_generated/models/delivery_out.py +334 -0
- taskadence/_generated/models/delivery_out_status.py +19 -0
- taskadence/_generated/models/dependency_link.py +52 -0
- taskadence/_generated/models/designation.py +504 -0
- taskadence/_generated/models/designation_catalog.py +116 -0
- taskadence/_generated/models/designation_create.py +204 -0
- taskadence/_generated/models/designation_create_metadata_type_0.py +53 -0
- taskadence/_generated/models/designation_deleted.py +86 -0
- taskadence/_generated/models/designation_group.py +95 -0
- taskadence/_generated/models/designation_metadata_type_0.py +53 -0
- taskadence/_generated/models/designation_update.py +213 -0
- taskadence/_generated/models/designation_update_metadata_type_0.py +53 -0
- taskadence/_generated/models/designation_usage.py +97 -0
- taskadence/_generated/models/designation_visibility.py +148 -0
- taskadence/_generated/models/environment.py +17 -0
- taskadence/_generated/models/goal_create.py +106 -0
- taskadence/_generated/models/goal_deleted.py +86 -0
- taskadence/_generated/models/goal_move.py +52 -0
- taskadence/_generated/models/goal_moved.py +410 -0
- taskadence/_generated/models/goal_moved_tasks_type_0_item.py +53 -0
- taskadence/_generated/models/goal_order.py +54 -0
- taskadence/_generated/models/goal_out.py +402 -0
- taskadence/_generated/models/goal_out_tasks_type_0_item.py +53 -0
- taskadence/_generated/models/goal_task_unfiled.py +86 -0
- taskadence/_generated/models/goal_tasks_file.py +54 -0
- taskadence/_generated/models/goal_tasks_filed.py +86 -0
- taskadence/_generated/models/goal_update.py +137 -0
- taskadence/_generated/models/goals_reordered.py +80 -0
- taskadence/_generated/models/health.py +73 -0
- taskadence/_generated/models/http_validation_error.py +90 -0
- taskadence/_generated/models/invite_status_enum.py +18 -0
- taskadence/_generated/models/mcp_artefact.py +121 -0
- taskadence/_generated/models/mcp_artefact_kind.py +17 -0
- taskadence/_generated/models/mcp_artefact_lang.py +17 -0
- taskadence/_generated/models/mcp_client_row.py +192 -0
- taskadence/_generated/models/mcp_clients_out.py +144 -0
- taskadence/_generated/models/mcp_clients_out_scopes_for_group.py +68 -0
- taskadence/_generated/models/mcp_group_out.py +125 -0
- taskadence/_generated/models/mcp_group_scopes.py +80 -0
- taskadence/_generated/models/mcp_package.py +98 -0
- taskadence/_generated/models/mcp_package_registry.py +16 -0
- taskadence/_generated/models/mcp_stdio.py +109 -0
- taskadence/_generated/models/mcp_stdio_env.py +55 -0
- taskadence/_generated/models/mcp_stdio_flags.py +55 -0
- taskadence/_generated/models/mcp_stdio_packages.py +70 -0
- taskadence/_generated/models/me_auth.py +201 -0
- taskadence/_generated/models/me_auth_grant_type.py +17 -0
- taskadence/_generated/models/me_auth_token_kind.py +16 -0
- taskadence/_generated/models/me_organization.py +121 -0
- taskadence/_generated/models/me_out.py +164 -0
- taskadence/_generated/models/me_principal.py +151 -0
- taskadence/_generated/models/me_principal_type.py +16 -0
- taskadence/_generated/models/mention.py +123 -0
- taskadence/_generated/models/mention_in.py +105 -0
- taskadence/_generated/models/mfa_enrolment_counts.py +79 -0
- taskadence/_generated/models/mfa_requirement_enum.py +17 -0
- taskadence/_generated/models/milestone_create.py +106 -0
- taskadence/_generated/models/milestone_deleted.py +86 -0
- taskadence/_generated/models/milestone_move.py +52 -0
- taskadence/_generated/models/milestone_moved.py +387 -0
- taskadence/_generated/models/milestone_moved_tasks_type_0_item.py +53 -0
- taskadence/_generated/models/milestone_order.py +54 -0
- taskadence/_generated/models/milestone_org_out.py +388 -0
- taskadence/_generated/models/milestone_org_out_tasks_type_0_item.py +53 -0
- taskadence/_generated/models/milestone_out.py +379 -0
- taskadence/_generated/models/milestone_out_tasks_type_0_item.py +53 -0
- taskadence/_generated/models/milestone_task_unfiled.py +86 -0
- taskadence/_generated/models/milestone_tasks_file.py +54 -0
- taskadence/_generated/models/milestone_tasks_filed.py +86 -0
- taskadence/_generated/models/milestone_update.py +161 -0
- taskadence/_generated/models/milestones_reordered.py +80 -0
- taskadence/_generated/models/o_auth_client_create.py +161 -0
- taskadence/_generated/models/o_auth_client_create_client_type.py +16 -0
- taskadence/_generated/models/o_auth_client_created.py +491 -0
- taskadence/_generated/models/o_auth_client_created_client_type.py +16 -0
- taskadence/_generated/models/o_auth_client_created_registration.py +16 -0
- taskadence/_generated/models/o_auth_client_created_review_state.py +16 -0
- taskadence/_generated/models/o_auth_client_created_status.py +16 -0
- taskadence/_generated/models/o_auth_client_out.py +470 -0
- taskadence/_generated/models/o_auth_client_out_client_type.py +16 -0
- taskadence/_generated/models/o_auth_client_out_registration.py +16 -0
- taskadence/_generated/models/o_auth_client_out_review_state.py +16 -0
- taskadence/_generated/models/o_auth_client_out_status.py +16 -0
- taskadence/_generated/models/o_auth_client_update.py +188 -0
- taskadence/_generated/models/o_auth_error_body.py +94 -0
- taskadence/_generated/models/org_card.py +310 -0
- taskadence/_generated/models/org_goals_out.py +106 -0
- taskadence/_generated/models/org_join_mode_enum.py +16 -0
- taskadence/_generated/models/org_milestones_out.py +106 -0
- taskadence/_generated/models/organization_in_db.py +460 -0
- taskadence/_generated/models/organization_in_db_metadata_type_0.py +53 -0
- taskadence/_generated/models/organization_invite_create.py +327 -0
- taskadence/_generated/models/organization_invite_in_db.py +463 -0
- taskadence/_generated/models/organization_invite_update.py +220 -0
- taskadence/_generated/models/organization_member_in_db.py +454 -0
- taskadence/_generated/models/organization_member_update.py +126 -0
- taskadence/_generated/models/organization_settings_out.py +385 -0
- taskadence/_generated/models/organization_settings_update.py +364 -0
- taskadence/_generated/models/organization_settings_update_idle_timeout_minutes_type_0.py +25 -0
- taskadence/_generated/models/page_connected_app.py +109 -0
- taskadence/_generated/models/page_delivery_out.py +109 -0
- taskadence/_generated/models/page_designation.py +109 -0
- taskadence/_generated/models/page_o_auth_client_out.py +109 -0
- taskadence/_generated/models/page_org_card.py +109 -0
- taskadence/_generated/models/page_organization_invite_in_db.py +109 -0
- taskadence/_generated/models/page_organization_member_in_db.py +109 -0
- taskadence/_generated/models/page_project_card.py +109 -0
- taskadence/_generated/models/page_project_member_in_db.py +109 -0
- taskadence/_generated/models/page_project_resource_in_db.py +109 -0
- taskadence/_generated/models/page_section_out.py +109 -0
- taskadence/_generated/models/page_service_account_out.py +109 -0
- taskadence/_generated/models/page_task_attachment_in_db.py +109 -0
- taskadence/_generated/models/page_task_comment_in_db.py +109 -0
- taskadence/_generated/models/page_task_history_in_db.py +109 -0
- taskadence/_generated/models/page_token_out.py +109 -0
- taskadence/_generated/models/page_webhook_event_type.py +109 -0
- taskadence/_generated/models/page_webhook_out.py +109 -0
- taskadence/_generated/models/pin_list_page.py +108 -0
- taskadence/_generated/models/pin_order.py +78 -0
- taskadence/_generated/models/pin_out.py +203 -0
- taskadence/_generated/models/pin_ref.py +64 -0
- taskadence/_generated/models/pin_type_enum.py +16 -0
- taskadence/_generated/models/priority_enum.py +19 -0
- taskadence/_generated/models/problem.py +167 -0
- taskadence/_generated/models/problem_errors_item.py +53 -0
- taskadence/_generated/models/problem_mfa.py +109 -0
- taskadence/_generated/models/problem_mfa_reason.py +16 -0
- taskadence/_generated/models/problem_mfa_required_for.py +16 -0
- taskadence/_generated/models/problem_type.py +63 -0
- taskadence/_generated/models/project_card.py +574 -0
- taskadence/_generated/models/project_card_metadata_type_0.py +53 -0
- taskadence/_generated/models/project_create.py +494 -0
- taskadence/_generated/models/project_create_metadata_type_0.py +53 -0
- taskadence/_generated/models/project_goals_out.py +135 -0
- taskadence/_generated/models/project_in_db.py +565 -0
- taskadence/_generated/models/project_in_db_metadata_type_0.py +53 -0
- taskadence/_generated/models/project_lead_out.py +145 -0
- taskadence/_generated/models/project_member_create.py +349 -0
- taskadence/_generated/models/project_member_in_db.py +368 -0
- taskadence/_generated/models/project_member_update.py +161 -0
- taskadence/_generated/models/project_milestones_group.py +143 -0
- taskadence/_generated/models/project_milestones_out.py +135 -0
- taskadence/_generated/models/project_order.py +63 -0
- taskadence/_generated/models/project_resource_create.py +191 -0
- taskadence/_generated/models/project_resource_in_db.py +384 -0
- taskadence/_generated/models/project_resource_update.py +125 -0
- taskadence/_generated/models/project_role_enum.py +17 -0
- taskadence/_generated/models/project_stats_in_db.py +153 -0
- taskadence/_generated/models/project_status_enum.py +24 -0
- taskadence/_generated/models/project_update.py +454 -0
- taskadence/_generated/models/project_update_metadata_type_0.py +53 -0
- taskadence/_generated/models/project_visibility_enum.py +16 -0
- taskadence/_generated/models/projects_reordered.py +88 -0
- taskadence/_generated/models/protected_resource_metadata.py +137 -0
- taskadence/_generated/models/registration_error_body.py +95 -0
- taskadence/_generated/models/registration_error_body_error.py +16 -0
- taskadence/_generated/models/release.py +215 -0
- taskadence/_generated/models/release_note_item.py +278 -0
- taskadence/_generated/models/release_summary.py +97 -0
- taskadence/_generated/models/release_type.py +18 -0
- taskadence/_generated/models/reply_create.py +60 -0
- taskadence/_generated/models/review_member.py +261 -0
- taskadence/_generated/models/review_meta.py +70 -0
- taskadence/_generated/models/review_project.py +101 -0
- taskadence/_generated/models/review_summary.py +158 -0
- taskadence/_generated/models/review_token.py +184 -0
- taskadence/_generated/models/scope_ref.py +82 -0
- taskadence/_generated/models/section_create.py +101 -0
- taskadence/_generated/models/section_out.py +225 -0
- taskadence/_generated/models/section_reorder.py +72 -0
- taskadence/_generated/models/section_scope_enum.py +17 -0
- taskadence/_generated/models/section_update.py +85 -0
- taskadence/_generated/models/sections_for_scopes.py +133 -0
- taskadence/_generated/models/service_account_create.py +75 -0
- taskadence/_generated/models/service_account_out.py +209 -0
- taskadence/_generated/models/service_account_update.py +52 -0
- taskadence/_generated/models/sprint_create.py +156 -0
- taskadence/_generated/models/sprint_deleted.py +86 -0
- taskadence/_generated/models/sprint_list_page.py +116 -0
- taskadence/_generated/models/sprint_out.py +371 -0
- taskadence/_generated/models/sprint_update.py +208 -0
- taskadence/_generated/models/storage_breakdown.py +104 -0
- taskadence/_generated/models/storage_by_kind.py +88 -0
- taskadence/_generated/models/storage_day.py +78 -0
- taskadence/_generated/models/storage_file.py +171 -0
- taskadence/_generated/models/storage_file_kind.py +17 -0
- taskadence/_generated/models/storage_project.py +101 -0
- taskadence/_generated/models/storage_usage.py +233 -0
- taskadence/_generated/models/storage_usage_status.py +19 -0
- taskadence/_generated/models/subtask_link.py +52 -0
- taskadence/_generated/models/task_attachment_in_db.py +333 -0
- taskadence/_generated/models/task_attachment_update.py +127 -0
- taskadence/_generated/models/task_card_view.py +1019 -0
- taskadence/_generated/models/task_card_view_metadata_type_0_item.py +53 -0
- taskadence/_generated/models/task_card_view_type_data_type_0.py +53 -0
- taskadence/_generated/models/task_comment_create.py +282 -0
- taskadence/_generated/models/task_comment_in_db.py +329 -0
- taskadence/_generated/models/task_comment_update.py +85 -0
- taskadence/_generated/models/task_create.py +669 -0
- taskadence/_generated/models/task_create_metadata_type_0_item.py +53 -0
- taskadence/_generated/models/task_create_type_data_type_0.py +53 -0
- taskadence/_generated/models/task_history_in_db.py +231 -0
- taskadence/_generated/models/task_history_in_db_metadata_type_0_item.py +53 -0
- taskadence/_generated/models/task_in_db.py +997 -0
- taskadence/_generated/models/task_in_db_metadata_type_0_item.py +53 -0
- taskadence/_generated/models/task_in_db_type_data_type_0.py +53 -0
- taskadence/_generated/models/task_list_page.py +109 -0
- taskadence/_generated/models/task_milestone_set.py +67 -0
- taskadence/_generated/models/task_project_set.py +66 -0
- taskadence/_generated/models/task_review_decision.py +58 -0
- taskadence/_generated/models/task_review_decision_decision.py +16 -0
- taskadence/_generated/models/task_section_out.py +118 -0
- taskadence/_generated/models/task_section_set.py +105 -0
- taskadence/_generated/models/task_sprint_set.py +65 -0
- taskadence/_generated/models/task_status_enum.py +21 -0
- taskadence/_generated/models/task_type_enum.py +16 -0
- taskadence/_generated/models/task_update.py +582 -0
- taskadence/_generated/models/task_update_metadata_type_0_item.py +53 -0
- taskadence/_generated/models/task_update_type_data_type_0.py +53 -0
- taskadence/_generated/models/team_create.py +95 -0
- taskadence/_generated/models/team_deleted.py +94 -0
- taskadence/_generated/models/team_detail.py +298 -0
- taskadence/_generated/models/team_list_page.py +116 -0
- taskadence/_generated/models/team_member_create.py +73 -0
- taskadence/_generated/models/team_member_designation.py +75 -0
- taskadence/_generated/models/team_member_out.py +192 -0
- taskadence/_generated/models/team_member_update.py +56 -0
- taskadence/_generated/models/team_out.py +270 -0
- taskadence/_generated/models/team_role_enum.py +16 -0
- taskadence/_generated/models/team_update.py +85 -0
- taskadence/_generated/models/token_create.py +190 -0
- taskadence/_generated/models/token_create_kind.py +16 -0
- taskadence/_generated/models/token_created.py +461 -0
- taskadence/_generated/models/token_created_grant_type.py +17 -0
- taskadence/_generated/models/token_created_kind.py +16 -0
- taskadence/_generated/models/token_created_status.py +17 -0
- taskadence/_generated/models/token_out.py +452 -0
- taskadence/_generated/models/token_out_grant_type.py +17 -0
- taskadence/_generated/models/token_out_kind.py +16 -0
- taskadence/_generated/models/token_out_status.py +17 -0
- taskadence/_generated/models/token_response.py +113 -0
- taskadence/_generated/models/token_update.py +52 -0
- taskadence/_generated/models/unattached_token.py +192 -0
- taskadence/_generated/models/upload_complete_in.py +65 -0
- taskadence/_generated/models/upload_create_in.py +193 -0
- taskadence/_generated/models/upload_create_in_kind.py +16 -0
- taskadence/_generated/models/upload_create_out.py +116 -0
- taskadence/_generated/models/upload_create_out_headers.py +55 -0
- taskadence/_generated/models/validation_error.py +134 -0
- taskadence/_generated/models/validation_error_context.py +53 -0
- taskadence/_generated/models/view_create.py +165 -0
- taskadence/_generated/models/view_create_display.py +55 -0
- taskadence/_generated/models/view_create_query.py +83 -0
- taskadence/_generated/models/view_deleted.py +78 -0
- taskadence/_generated/models/view_duplicate.py +102 -0
- taskadence/_generated/models/view_list_page.py +108 -0
- taskadence/_generated/models/view_out.py +295 -0
- taskadence/_generated/models/view_out_display.py +53 -0
- taskadence/_generated/models/view_out_query.py +53 -0
- taskadence/_generated/models/view_resource_enum.py +16 -0
- taskadence/_generated/models/view_scope_enum.py +17 -0
- taskadence/_generated/models/view_update.py +168 -0
- taskadence/_generated/models/view_update_display_type_0.py +53 -0
- taskadence/_generated/models/view_update_query_type_0.py +78 -0
- taskadence/_generated/models/visibility_update.py +85 -0
- taskadence/_generated/models/webhook_actor.py +100 -0
- taskadence/_generated/models/webhook_create.py +113 -0
- taskadence/_generated/models/webhook_created.py +438 -0
- taskadence/_generated/models/webhook_created_status.py +17 -0
- taskadence/_generated/models/webhook_event.py +161 -0
- taskadence/_generated/models/webhook_event_data.py +140 -0
- taskadence/_generated/models/webhook_event_data_after_type_0.py +53 -0
- taskadence/_generated/models/webhook_event_data_before_type_0.py +53 -0
- taskadence/_generated/models/webhook_event_type.py +97 -0
- taskadence/_generated/models/webhook_out.py +428 -0
- taskadence/_generated/models/webhook_out_status.py +17 -0
- taskadence/_generated/models/webhook_update.py +184 -0
- taskadence/_generated/models/webhook_update_status_type_0.py +16 -0
- taskadence/_generated/models/whats_new_response.py +107 -0
- taskadence/_generated/models/whats_new_response_summary.py +53 -0
- taskadence/_generated/types.py +56 -0
- taskadence/_operations.py +1969 -0
- taskadence/_uploads.py +527 -0
- taskadence/_version.py +3 -0
- taskadence/cli/__init__.py +612 -0
- taskadence/cli/_config.py +166 -0
- taskadence/dataframe.py +68 -0
- taskadence/errors.py +350 -0
- taskadence/models.py +14 -0
- taskadence/pagination.py +137 -0
- taskadence/py.typed +0 -0
- taskadence/resources.py +6127 -0
- taskadence/webhooks.py +149 -0
- taskadence-0.1.0.dist-info/METADATA +524 -0
- taskadence-0.1.0.dist-info/RECORD +533 -0
- taskadence-0.1.0.dist-info/WHEEL +4 -0
- taskadence-0.1.0.dist-info/entry_points.txt +3 -0
- taskadence-0.1.0.dist-info/licenses/LICENSE +202 -0
- taskadence-0.1.0.dist-info/licenses/NOTICE +2 -0
taskadence/__init__.py
ADDED
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"""TasKadence for Python.
|
|
2
|
+
|
|
3
|
+
from taskadence import Taskadence
|
|
4
|
+
|
|
5
|
+
tm = Taskadence(token="tkd_live_…") # or set TASKADENCE_TOKEN
|
|
6
|
+
for task in tm.tasks.list(org_id="O123456"):
|
|
7
|
+
print(task.task_id, task.title)
|
|
8
|
+
tm.views.rows("V…").to_dataframe() # pip install "taskadence[pandas]"
|
|
9
|
+
|
|
10
|
+
`tm.<resource>.<verb>(…)` exists for every public operation of the API (`tm.tasks.list`, `tm.projects.read`, …); the
|
|
11
|
+
models are in `taskadence.models`, the exceptions in `taskadence.errors`, webhook verification in `taskadence.webhooks`.
|
|
12
|
+
`0.x` is a pre-release: no compatibility promise until 1.0.
|
|
13
|
+
"""
|
|
14
|
+
|
|
15
|
+
from . import errors, models, webhooks
|
|
16
|
+
from ._client import AsyncTaskadence, Taskadence
|
|
17
|
+
from ._core import AUTO, ConfigurationError, FileInput, NotModified, NotModifiedType, Operation
|
|
18
|
+
from ._operations import API_VERSION, DEFAULT_BASE_URL, OPERATIONS
|
|
19
|
+
from ._uploads import UploadProgress
|
|
20
|
+
from ._version import __version__
|
|
21
|
+
from .errors import (
|
|
22
|
+
APIConnectionError,
|
|
23
|
+
APIError,
|
|
24
|
+
APITimeoutError,
|
|
25
|
+
AuthenticationError,
|
|
26
|
+
BadRequestError,
|
|
27
|
+
BlobUploadError,
|
|
28
|
+
ConflictError,
|
|
29
|
+
ForbiddenError,
|
|
30
|
+
IdempotencyKeyInFlightError,
|
|
31
|
+
IdempotencyKeyInvalidError,
|
|
32
|
+
IdempotencyKeyReusedError,
|
|
33
|
+
InsufficientScopeError,
|
|
34
|
+
InternalError,
|
|
35
|
+
InvalidParameterError,
|
|
36
|
+
InvalidValueError,
|
|
37
|
+
NotFoundError,
|
|
38
|
+
PreconditionFailedError,
|
|
39
|
+
RateLimitedError,
|
|
40
|
+
ResponseValidationError,
|
|
41
|
+
TaskadenceError,
|
|
42
|
+
TestTokenReadOnlyError,
|
|
43
|
+
TokenExpiredError,
|
|
44
|
+
TokenInvalidError,
|
|
45
|
+
TokenPolicyError,
|
|
46
|
+
TokenRevokedError,
|
|
47
|
+
UnprocessableEntityError,
|
|
48
|
+
UrlRefusedError,
|
|
49
|
+
ValidationError,
|
|
50
|
+
)
|
|
51
|
+
from .pagination import AsyncPage, Page
|
|
52
|
+
|
|
53
|
+
__all__ = [
|
|
54
|
+
"API_VERSION",
|
|
55
|
+
"AUTO",
|
|
56
|
+
"DEFAULT_BASE_URL",
|
|
57
|
+
"OPERATIONS",
|
|
58
|
+
"APIConnectionError",
|
|
59
|
+
"APIError",
|
|
60
|
+
"APITimeoutError",
|
|
61
|
+
"AsyncPage",
|
|
62
|
+
"AsyncTaskadence",
|
|
63
|
+
"AuthenticationError",
|
|
64
|
+
"BadRequestError",
|
|
65
|
+
"BlobUploadError",
|
|
66
|
+
"ConfigurationError",
|
|
67
|
+
"ConflictError",
|
|
68
|
+
"FileInput",
|
|
69
|
+
"ForbiddenError",
|
|
70
|
+
"IdempotencyKeyInFlightError",
|
|
71
|
+
"IdempotencyKeyInvalidError",
|
|
72
|
+
"IdempotencyKeyReusedError",
|
|
73
|
+
"InsufficientScopeError",
|
|
74
|
+
"InternalError",
|
|
75
|
+
"InvalidParameterError",
|
|
76
|
+
"InvalidValueError",
|
|
77
|
+
"NotFoundError",
|
|
78
|
+
"NotModified",
|
|
79
|
+
"NotModifiedType",
|
|
80
|
+
"Operation",
|
|
81
|
+
"Page",
|
|
82
|
+
"PreconditionFailedError",
|
|
83
|
+
"RateLimitedError",
|
|
84
|
+
"ResponseValidationError",
|
|
85
|
+
"Taskadence",
|
|
86
|
+
"TaskadenceError",
|
|
87
|
+
"TestTokenReadOnlyError",
|
|
88
|
+
"TokenExpiredError",
|
|
89
|
+
"TokenInvalidError",
|
|
90
|
+
"TokenPolicyError",
|
|
91
|
+
"TokenRevokedError",
|
|
92
|
+
"UnprocessableEntityError",
|
|
93
|
+
"UploadProgress",
|
|
94
|
+
"UrlRefusedError",
|
|
95
|
+
"ValidationError",
|
|
96
|
+
"__version__",
|
|
97
|
+
"errors",
|
|
98
|
+
"models",
|
|
99
|
+
"webhooks",
|
|
100
|
+
]
|
taskadence/_brand.py
ADDED
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"""The product's name and every name derived from it, in ONE place — plus the pre-rename (TasksMate) spellings that
|
|
2
|
+
are still accepted on input. Nothing here is emitted under the old name: the legacy values are read, never sent.
|
|
3
|
+
|
|
4
|
+
- `BRAND_NAME`: the wordmark, what prose, messages and help text call the product (5.8c). Identifiers, package names,
|
|
5
|
+
imports, environment variables and URLs stay `Taskadence` / `taskadence`; `wordmark()` applies it to generated prose.
|
|
6
|
+
- Environment: `TASKADENCE_*` first; a `TASKSMATE_*` variable still works, with a `DeprecationWarning` (`getenv`).
|
|
7
|
+
- Problem types: the API emits `urn:taskadence:problem:…`; `urn:tasksmate:problem:…` (older servers) is read the same.
|
|
8
|
+
- Access tokens: issued as `tkd_live_…` / `tkd_test_…`; `tm_live_…` / `tm_test_…` tokens minted before the rename
|
|
9
|
+
keep working.
|
|
10
|
+
"""
|
|
11
|
+
|
|
12
|
+
from __future__ import annotations
|
|
13
|
+
|
|
14
|
+
import os
|
|
15
|
+
import re
|
|
16
|
+
import sys
|
|
17
|
+
import warnings
|
|
18
|
+
from types import FrameType
|
|
19
|
+
|
|
20
|
+
BRAND_NAME = "TasKadence"
|
|
21
|
+
SLUG = "taskadence"
|
|
22
|
+
|
|
23
|
+
ENV_PREFIX = "TASKADENCE_"
|
|
24
|
+
LEGACY_ENV_PREFIX = "TASKSMATE_" # pre-rename; read with a DeprecationWarning
|
|
25
|
+
|
|
26
|
+
URN_PREFIX = "urn:taskadence:problem:"
|
|
27
|
+
LEGACY_URN_PREFIX = "urn:tasksmate:problem:" # pre-rename servers
|
|
28
|
+
URN_PREFIXES = (URN_PREFIX, LEGACY_URN_PREFIX)
|
|
29
|
+
|
|
30
|
+
TOKEN_PREFIXES = ("tkd_live_", "tkd_test_")
|
|
31
|
+
LEGACY_TOKEN_PREFIXES = ("tm_live_", "tm_test_") # minted before the rename; still valid
|
|
32
|
+
ACCEPTED_TOKEN_PREFIXES = TOKEN_PREFIXES + LEGACY_TOKEN_PREFIXES
|
|
33
|
+
|
|
34
|
+
# The class-style name in running prose: not inside code (`Taskadence(...)`, `AsyncTaskadence`, `TaskadenceError`,
|
|
35
|
+
# `X-Taskadence-Event`, `Taskadence-Version`) and not a path or URL.
|
|
36
|
+
_PROSE_NAME = re.compile(r"(?<![\w`./-])Taskadence(?![\w(`/-])")
|
|
37
|
+
|
|
38
|
+
LEGACY_SLUG = "tasksmate" # the CLI's keyring service and config directory before the rename (read, then migrated)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
def getenv(name: str) -> str | None:
|
|
42
|
+
"""`TASKADENCE_<name>`, else the deprecated `TASKSMATE_<name>` (with a `DeprecationWarning`), else None.
|
|
43
|
+
|
|
44
|
+
`name` is the full new name (`TASKADENCE_TOKEN`) or its suffix (`TOKEN`). An empty value counts as unset.
|
|
45
|
+
"""
|
|
46
|
+
suffix = name.removeprefix(ENV_PREFIX)
|
|
47
|
+
value = os.environ.get(ENV_PREFIX + suffix)
|
|
48
|
+
if value:
|
|
49
|
+
return value
|
|
50
|
+
legacy = os.environ.get(LEGACY_ENV_PREFIX + suffix)
|
|
51
|
+
if legacy:
|
|
52
|
+
warnings.warn(
|
|
53
|
+
f"{LEGACY_ENV_PREFIX}{suffix} is deprecated: {BRAND_NAME} reads {ENV_PREFIX}{suffix}. "
|
|
54
|
+
f"Rename the variable; the old name will stop working in a future release.",
|
|
55
|
+
DeprecationWarning,
|
|
56
|
+
stacklevel=_caller_level(),
|
|
57
|
+
)
|
|
58
|
+
return legacy
|
|
59
|
+
return None
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
def _caller_level() -> int:
|
|
63
|
+
"""The `stacklevel` that points the warning at the first frame outside this package (the user's code)."""
|
|
64
|
+
level = 2
|
|
65
|
+
frame: FrameType | None = sys._getframe(2)
|
|
66
|
+
while frame is not None and str(frame.f_globals.get("__name__", "")).startswith(SLUG):
|
|
67
|
+
level, frame = level + 1, frame.f_back
|
|
68
|
+
return level
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
def wordmark(text: str) -> str:
|
|
72
|
+
"""`text` with the product name in prose spelled as the wordmark; code spans (`…`) are left as they are."""
|
|
73
|
+
parts = text.split("`")
|
|
74
|
+
return "`".join(part if i % 2 else _PROSE_NAME.sub(BRAND_NAME, part) for i, part in enumerate(parts))
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
def problem_slug(type_: str) -> str | None:
|
|
78
|
+
"""`token-expired` for `urn:taskadence:problem:token-expired` (or the legacy `urn:tasksmate:…`); else None."""
|
|
79
|
+
for prefix in URN_PREFIXES:
|
|
80
|
+
if type_.startswith(prefix):
|
|
81
|
+
return type_[len(prefix) :]
|
|
82
|
+
return None
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
def is_access_token(value: str) -> bool:
|
|
86
|
+
"""True for a token-shaped access token: `tkd_live_` / `tkd_test_`, or the pre-rename `tm_live_` / `tm_test_`."""
|
|
87
|
+
return value.startswith(ACCEPTED_TOKEN_PREFIXES)
|
taskadence/_client.py
ADDED
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
"""`Taskadence` and `AsyncTaskadence`: configuration, the resource namespaces, lifetime."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from collections.abc import Mapping
|
|
6
|
+
from types import TracebackType
|
|
7
|
+
|
|
8
|
+
import httpx
|
|
9
|
+
|
|
10
|
+
from ._core import AsyncCore, SyncCore
|
|
11
|
+
from ._generated import models
|
|
12
|
+
from ._operations import API_VERSION, DEFAULT_BASE_URL
|
|
13
|
+
from .resources import AsyncResources, SyncResources
|
|
14
|
+
|
|
15
|
+
DEFAULT_TIMEOUT = 30.0
|
|
16
|
+
DEFAULT_MAX_RETRIES = 3
|
|
17
|
+
DEFAULT_MAX_RETRY_AFTER = 60.0
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class Taskadence(SyncResources):
|
|
21
|
+
"""The TasKadence API.
|
|
22
|
+
|
|
23
|
+
from taskadence import Taskadence
|
|
24
|
+
|
|
25
|
+
tm = Taskadence() # token from TASKADENCE_TOKEN
|
|
26
|
+
for task in tm.tasks.list(org_id="O123456", filter={"status": ["in_progress"]}):
|
|
27
|
+
print(task.task_id, task.title)
|
|
28
|
+
|
|
29
|
+
`token`: a TasKadence access token (`tkd_live_…`; a pre-rename `tm_live_…` works too), else `TASKADENCE_TOKEN`.
|
|
30
|
+
`base_url`: else `TASKADENCE_API_URL`, else the spec's first server (`taskadence.DEFAULT_BASE_URL`); a trailing
|
|
31
|
+
`/v1` is accepted. Safe requests are retried `max_retries` times (see `taskadence._core`); a `Retry-After` over
|
|
32
|
+
`max_retry_after` seconds is not waited out.
|
|
33
|
+
`api_version` is sent as `Taskadence-Version` (default: the API date this SDK was generated from).
|
|
34
|
+
"""
|
|
35
|
+
|
|
36
|
+
def __init__(
|
|
37
|
+
self,
|
|
38
|
+
token: str | None = None,
|
|
39
|
+
base_url: str | None = None,
|
|
40
|
+
*,
|
|
41
|
+
timeout: float = DEFAULT_TIMEOUT,
|
|
42
|
+
max_retries: int = DEFAULT_MAX_RETRIES,
|
|
43
|
+
api_version: str | None = None,
|
|
44
|
+
max_retry_after: float = DEFAULT_MAX_RETRY_AFTER,
|
|
45
|
+
headers: Mapping[str, str] | None = None,
|
|
46
|
+
http_client: httpx.Client | None = None,
|
|
47
|
+
) -> None:
|
|
48
|
+
self._core = SyncCore(
|
|
49
|
+
token,
|
|
50
|
+
base_url,
|
|
51
|
+
timeout=timeout,
|
|
52
|
+
max_retries=max_retries,
|
|
53
|
+
api_version=api_version,
|
|
54
|
+
default_base_url=DEFAULT_BASE_URL,
|
|
55
|
+
spec_version=API_VERSION,
|
|
56
|
+
max_retry_after=max_retry_after,
|
|
57
|
+
headers=headers,
|
|
58
|
+
http_client=http_client,
|
|
59
|
+
)
|
|
60
|
+
self._attach(self._core)
|
|
61
|
+
|
|
62
|
+
@property
|
|
63
|
+
def base_url(self) -> str:
|
|
64
|
+
return self._core.base_url
|
|
65
|
+
|
|
66
|
+
@property
|
|
67
|
+
def api_version(self) -> str:
|
|
68
|
+
return self._core.api_version
|
|
69
|
+
|
|
70
|
+
def close(self) -> None:
|
|
71
|
+
"""Close the HTTP connection pool (not an `http_client` you passed in)."""
|
|
72
|
+
self._core.close()
|
|
73
|
+
|
|
74
|
+
def __enter__(self) -> Taskadence:
|
|
75
|
+
return self
|
|
76
|
+
|
|
77
|
+
def __exit__(
|
|
78
|
+
self, exc_type: type[BaseException] | None, exc: BaseException | None, tb: TracebackType | None
|
|
79
|
+
) -> None:
|
|
80
|
+
self.close()
|
|
81
|
+
|
|
82
|
+
def __repr__(self) -> str:
|
|
83
|
+
return f"Taskadence(base_url={self.base_url!r})"
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
class AsyncTaskadence(AsyncResources):
|
|
87
|
+
"""`Taskadence` for asyncio: the same namespaces and methods, awaited; lists are `AsyncPage`s (`async for`).
|
|
88
|
+
|
|
89
|
+
async with AsyncTaskadence() as tm:
|
|
90
|
+
me = await tm.me()
|
|
91
|
+
async for task in await tm.tasks.list(org_id=me.organizations[0].org_id):
|
|
92
|
+
...
|
|
93
|
+
"""
|
|
94
|
+
|
|
95
|
+
def __init__(
|
|
96
|
+
self,
|
|
97
|
+
token: str | None = None,
|
|
98
|
+
base_url: str | None = None,
|
|
99
|
+
*,
|
|
100
|
+
timeout: float = DEFAULT_TIMEOUT,
|
|
101
|
+
max_retries: int = DEFAULT_MAX_RETRIES,
|
|
102
|
+
api_version: str | None = None,
|
|
103
|
+
max_retry_after: float = DEFAULT_MAX_RETRY_AFTER,
|
|
104
|
+
headers: Mapping[str, str] | None = None,
|
|
105
|
+
http_client: httpx.AsyncClient | None = None,
|
|
106
|
+
) -> None:
|
|
107
|
+
self._core = AsyncCore(
|
|
108
|
+
token,
|
|
109
|
+
base_url,
|
|
110
|
+
timeout=timeout,
|
|
111
|
+
max_retries=max_retries,
|
|
112
|
+
api_version=api_version,
|
|
113
|
+
default_base_url=DEFAULT_BASE_URL,
|
|
114
|
+
spec_version=API_VERSION,
|
|
115
|
+
max_retry_after=max_retry_after,
|
|
116
|
+
headers=headers,
|
|
117
|
+
http_client=http_client,
|
|
118
|
+
)
|
|
119
|
+
self._attach(self._core)
|
|
120
|
+
|
|
121
|
+
@property
|
|
122
|
+
def base_url(self) -> str:
|
|
123
|
+
return self._core.base_url
|
|
124
|
+
|
|
125
|
+
@property
|
|
126
|
+
def api_version(self) -> str:
|
|
127
|
+
return self._core.api_version
|
|
128
|
+
|
|
129
|
+
async def close(self) -> None:
|
|
130
|
+
await self._core.aclose()
|
|
131
|
+
|
|
132
|
+
async def __aenter__(self) -> AsyncTaskadence:
|
|
133
|
+
return self
|
|
134
|
+
|
|
135
|
+
async def __aexit__(
|
|
136
|
+
self, exc_type: type[BaseException] | None, exc: BaseException | None, tb: TracebackType | None
|
|
137
|
+
) -> None:
|
|
138
|
+
await self.close()
|
|
139
|
+
|
|
140
|
+
def __repr__(self) -> str:
|
|
141
|
+
return f"AsyncTaskadence(base_url={self.base_url!r})"
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
__all__ = ["AsyncTaskadence", "Taskadence", "models"]
|