| .openapi-generator | ||
| docs | ||
| src | ||
| .gitignore | ||
| .openapi-generator-ignore | ||
| .travis.yml | ||
| Cargo.toml | ||
| flake.lock | ||
| flake.nix | ||
| git_push.sh | ||
| justfile | ||
| openapi_spec.json | ||
| README.md | ||
Rust API client for vikunjars
Pagination
Every endpoint capable of pagination will return two headers:
x-pagination-total-pages: The total number of available pages for this requestx-pagination-result-count: The number of items returned for this request.
Rights
All endpoints which return a single item (project, task, etc.) - no array - will also return a x-max-right header with the max right the user has on this item as an int where 0 is Read Only, 1 is Read & Write and 2 is Admin.
This can be used to show or hide ui elements based on the rights the user has.
Errors
All errors have an error code and a human-readable error message in addition to the http status code. You should always check for the status code in the response, not only the http status code.
Due to limitations in the swagger library we're using for this document, only one error per http status code is documented here. Make sure to check the error docs in Vikunja's documentation for a full list of available error codes.
Authorization
JWT-Auth: Main authorization method, used for most of the requests. Needs Authorization: Bearer <jwt-token>-header to authenticate successfully.
API Token: You can create scoped API tokens for your user and use the token to make authenticated requests in the context of that user. The token must be provided via an Authorization: Bearer <token> header, similar to jwt auth. See the documentation for the api group to manage token creation and revocation.
BasicAuth: Only used when requesting tasks via CalDAV.
For more information, please visit https://vikunja.io/contact/
Overview
This API client was generated by the OpenAPI Generator project. By using the openapi-spec from a remote server, you can easily generate an API client.
- API version: v0.24.6
- Package version: v0.24.6
- Generator version: 7.17.0
- Build package:
org.openapitools.codegen.languages.RustClientCodegen
Installation
Put the package under your project folder in a directory named vikunjars and add the following to Cargo.toml under [dependencies]:
vikunjars = { path = "./vikunjars" }
Documentation for API Endpoints
All URIs are relative to /api/v1
| Class | Method | HTTP request | Description |
|---|---|---|---|
| ApiApi | routes_get | GET /routes | Get a list of all token api routes |
| ApiApi | tokens_get | GET /tokens | Get all api tokens of the current user |
| ApiApi | tokens_put | PUT /tokens | Create a new api token |
| ApiApi | tokens_token_id_delete | DELETE /tokens/{tokenID} | Deletes an existing api token |
| AssigneesApi | tasks_task_id_assignees_bulk_post | POST /tasks/{taskID}/assignees/bulk | Add multiple new assignees to a task |
| AssigneesApi | tasks_task_id_assignees_get | GET /tasks/{taskID}/assignees | Get all assignees for a task |
| AssigneesApi | tasks_task_id_assignees_put | PUT /tasks/{taskID}/assignees | Add a new assignee to a task |
| AssigneesApi | tasks_task_id_assignees_user_id_delete | DELETE /tasks/{taskID}/assignees/{userID} | Delete an assignee |
| AuthApi | get_token_openid | POST /auth/openid/{provider}/callback | Authenticate a user with OpenID Connect |
| AuthApi | login_post | POST /login | Login |
| AuthApi | register_post | POST /register | Register |
| FilterApi | filters_id_delete | DELETE /filters/{id} | Removes a saved filter |
| FilterApi | filters_id_get | GET /filters/{id} | Gets one saved filter |
| FilterApi | filters_id_post | POST /filters/{id} | Updates a saved filter |
| FilterApi | filters_put | PUT /filters | Creates a new saved filter |
| LabelsApi | labels_get | GET /labels | Get all labels a user has access to |
| LabelsApi | labels_id_delete | DELETE /labels/{id} | Delete a label |
| LabelsApi | labels_id_get | GET /labels/{id} | Gets one label |
| LabelsApi | labels_id_put | PUT /labels/{id} | Update a label |
| LabelsApi | labels_put | PUT /labels | Create a label |
| LabelsApi | tasks_task_id_labels_bulk_post | POST /tasks/{taskID}/labels/bulk | Update all labels on a task. |
| LabelsApi | tasks_task_labels_get | GET /tasks/{task}/labels | Get all labels on a task |
| LabelsApi | tasks_task_labels_label_delete | DELETE /tasks/{task}/labels/{label} | Remove a label from a task |
| LabelsApi | tasks_task_labels_put | PUT /tasks/{task}/labels | Add a label to a task |
| MigrationApi | migration_microsoft_todo_auth_get | GET /migration/microsoft-todo/auth | Get the auth url from Microsoft Todo |
| MigrationApi | migration_microsoft_todo_migrate_post | POST /migration/microsoft-todo/migrate | Migrate all projects, tasks etc. from Microsoft Todo |
| MigrationApi | migration_microsoft_todo_status_get | GET /migration/microsoft-todo/status | Get migration status |
| MigrationApi | migration_ticktick_migrate_post | POST /migration/ticktick/migrate | Import all projects, tasks etc. from a TickTick backup export |
| MigrationApi | migration_ticktick_status_get | GET /migration/ticktick/status | Get migration status |
| MigrationApi | migration_todoist_auth_get | GET /migration/todoist/auth | Get the auth url from todoist |
| MigrationApi | migration_todoist_migrate_post | POST /migration/todoist/migrate | Migrate all lists, tasks etc. from todoist |
| MigrationApi | migration_todoist_status_get | GET /migration/todoist/status | Get migration status |
| MigrationApi | migration_trello_auth_get | GET /migration/trello/auth | Get the auth url from trello |
| MigrationApi | migration_trello_migrate_post | POST /migration/trello/migrate | Migrate all projects, tasks etc. from trello |
| MigrationApi | migration_trello_status_get | GET /migration/trello/status | Get migration status |
| MigrationApi | migration_vikunja_file_migrate_post | POST /migration/vikunja-file/migrate | Import all projects, tasks etc. from a Vikunja data export |
| MigrationApi | migration_vikunja_file_status_get | GET /migration/vikunja-file/status | Get migration status |
| ProjectApi | backgrounds_unsplash_image_image_get | GET /backgrounds/unsplash/image/{image} | Get an unsplash image |
| ProjectApi | backgrounds_unsplash_image_image_thumb_get | GET /backgrounds/unsplash/image/{image}/thumb | Get an unsplash thumbnail image |
| ProjectApi | backgrounds_unsplash_search_get | GET /backgrounds/unsplash/search | Search for a background from unsplash |
| ProjectApi | projects_get | GET /projects | Get all projects a user has access to |
| ProjectApi | projects_id_background_delete | DELETE /projects/{id}/background | Remove a project background |
| ProjectApi | projects_id_background_get | GET /projects/{id}/background | Get the project background |
| ProjectApi | projects_id_backgrounds_unsplash_post | POST /projects/{id}/backgrounds/unsplash | Set an unsplash photo as project background |
| ProjectApi | projects_id_backgrounds_upload_put | PUT /projects/{id}/backgrounds/upload | Upload a project background |
| ProjectApi | projects_id_delete | DELETE /projects/{id} | Deletes a project |
| ProjectApi | projects_id_get | GET /projects/{id} | Gets one project |
| ProjectApi | projects_id_post | POST /projects/{id} | Updates a project |
| ProjectApi | projects_id_projectusers_get | GET /projects/{id}/projectusers | Get users |
| ProjectApi | projects_id_views_view_buckets_get | GET /projects/{id}/views/{view}/buckets | Get all kanban buckets of a project |
| ProjectApi | projects_id_views_view_buckets_put | PUT /projects/{id}/views/{view}/buckets | Create a new bucket |
| ProjectApi | projects_project_id_duplicate_put | PUT /projects/{projectID}/duplicate | Duplicate an existing project |
| ProjectApi | projects_project_id_views_view_buckets_bucket_id_delete | DELETE /projects/{projectID}/views/{view}/buckets/{bucketID} | Deletes an existing bucket |
| ProjectApi | projects_project_id_views_view_buckets_bucket_id_post | POST /projects/{projectID}/views/{view}/buckets/{bucketID} | Update an existing bucket |
| ProjectApi | projects_project_views_get | GET /projects/{project}/views | Get all project views for a project |
| ProjectApi | projects_project_views_id_delete | DELETE /projects/{project}/views/{id} | Delete a project view |
| ProjectApi | projects_project_views_id_get | GET /projects/{project}/views/{id} | Get one project view |
| ProjectApi | projects_project_views_id_post | POST /projects/{project}/views/{id} | Updates a project view |
| ProjectApi | projects_project_views_put | PUT /projects/{project}/views | Create a project view |
| ProjectApi | projects_put | PUT /projects | Creates a new project |
| ServiceApi | info_get | GET /info | Info |
| SharingApi | notifications_post | POST /notifications | Mark all notifications of a user as read |
| SharingApi | projects_id_teams_get | GET /projects/{id}/teams | Get teams on a project |
| SharingApi | projects_id_teams_put | PUT /projects/{id}/teams | Add a team to a project |
| SharingApi | projects_id_users_get | GET /projects/{id}/users | Get users on a project |
| SharingApi | projects_id_users_put | PUT /projects/{id}/users | Add a user to a project |
| SharingApi | projects_project_id_teams_team_id_delete | DELETE /projects/{projectID}/teams/{teamID} | Delete a team from a project |
| SharingApi | projects_project_id_teams_team_id_post | POST /projects/{projectID}/teams/{teamID} | Update a team <-> project relation |
| SharingApi | projects_project_id_users_user_id_delete | DELETE /projects/{projectID}/users/{userID} | Delete a user from a project |
| SharingApi | projects_project_id_users_user_id_post | POST /projects/{projectID}/users/{userID} | Update a user <-> project relation |
| SharingApi | projects_project_shares_get | GET /projects/{project}/shares | Get all link shares for a project |
| SharingApi | projects_project_shares_put | PUT /projects/{project}/shares | Share a project via link |
| SharingApi | projects_project_shares_share_delete | DELETE /projects/{project}/shares/{share} | Remove a link share |
| SharingApi | projects_project_shares_share_get | GET /projects/{project}/shares/{share} | Get one link shares for a project |
| SharingApi | shares_share_auth_post | POST /shares/{share}/auth | Get an auth token for a share |
| SubscriptionsApi | notifications_get | GET /notifications | Get all notifications for the current user |
| SubscriptionsApi | notifications_id_post | POST /notifications/{id} | Mark a notification as (un-)read |
| SubscriptionsApi | subscriptions_entity_entity_id_delete | DELETE /subscriptions/{entity}/{entityID} | Unsubscribe the current user from an entity. |
| SubscriptionsApi | subscriptions_entity_entity_id_put | PUT /subscriptions/{entity}/{entityID} | Subscribes the current user to an entity. |
| TaskApi | kind_id_reactions_delete_post | POST /{kind}/{id}/reactions/delete | Removes the user's reaction |
| TaskApi | kind_id_reactions_get | GET /{kind}/{id}/reactions | Get all reactions for an entity |
| TaskApi | kind_id_reactions_put | PUT /{kind}/{id}/reactions | Add a reaction to an entity |
| TaskApi | projects_id_tasks_put | PUT /projects/{id}/tasks | Create a task |
| TaskApi | projects_id_views_view_tasks_get | GET /projects/{id}/views/{view}/tasks | Get tasks in a project |
| TaskApi | projects_project_views_view_buckets_bucket_tasks_post | POST /projects/{project}/views/{view}/buckets/{bucket}/tasks | Update a task bucket |
| TaskApi | tasks_all_get | GET /tasks/all | Get tasks |
| TaskApi | tasks_bulk_post | POST /tasks/bulk | Update a bunch of tasks at once |
| TaskApi | tasks_id_attachments_attachment_id_delete | DELETE /tasks/{id}/attachments/{attachmentID} | Delete an attachment |
| TaskApi | tasks_id_attachments_attachment_id_get | GET /tasks/{id}/attachments/{attachmentID} | Get one attachment. |
| TaskApi | tasks_id_attachments_get | GET /tasks/{id}/attachments | Get all attachments for one task. |
| TaskApi | tasks_id_attachments_put | PUT /tasks/{id}/attachments | Upload a task attachment |
| TaskApi | tasks_id_delete | DELETE /tasks/{id} | Delete a task |
| TaskApi | tasks_id_get | GET /tasks/{id} | Get one task |
| TaskApi | tasks_id_position_post | POST /tasks/{id}/position | Updates a task position |
| TaskApi | tasks_id_post | POST /tasks/{id} | Update a task |
| TaskApi | tasks_task_id_comments_comment_id_delete | DELETE /tasks/{taskID}/comments/{commentID} | Remove a task comment |
| TaskApi | tasks_task_id_comments_comment_id_get | GET /tasks/{taskID}/comments/{commentID} | Remove a task comment |
| TaskApi | tasks_task_id_comments_comment_id_post | POST /tasks/{taskID}/comments/{commentID} | Update an existing task comment |
| TaskApi | tasks_task_id_comments_get | GET /tasks/{taskID}/comments | Get all task comments |
| TaskApi | tasks_task_id_comments_put | PUT /tasks/{taskID}/comments | Create a new task comment |
| TaskApi | tasks_task_id_relations_put | PUT /tasks/{taskID}/relations | Create a new relation between two tasks |
| TaskApi | tasks_task_id_relations_relation_kind_other_task_id_delete | DELETE /tasks/{taskID}/relations/{relationKind}/{otherTaskID} | Remove a task relation |
| TeamApi | teams_get | GET /teams | Get teams |
| TeamApi | teams_id_delete | DELETE /teams/{id} | Deletes a team |
| TeamApi | teams_id_get | GET /teams/{id} | Gets one team |
| TeamApi | teams_id_members_put | PUT /teams/{id}/members | Add a user to a team |
| TeamApi | teams_id_members_user_id_admin_post | POST /teams/{id}/members/{userID}/admin | Toggle a team member's admin status |
| TeamApi | teams_id_members_user_id_delete | DELETE /teams/{id}/members/{userID} | Remove a user from a team |
| TeamApi | teams_id_post | POST /teams/{id} | Updates a team |
| TeamApi | teams_put | PUT /teams | Creates a new team |
| TestingApi | test_table_patch | PATCH /test/{table} | Reset the db to a defined state |
| UserApi | user_confirm_post | POST /user/confirm | Confirm the email of a new user |
| UserApi | user_deletion_cancel_post | POST /user/deletion/cancel | Abort a user deletion request |
| UserApi | user_deletion_confirm_post | POST /user/deletion/confirm | Confirm a user deletion request |
| UserApi | user_deletion_request_post | POST /user/deletion/request | Request the deletion of the user |
| UserApi | user_export_download_post | POST /user/export/download | Download a user data export. |
| UserApi | user_export_request_post | POST /user/export/request | Request a user data export. |
| UserApi | user_get | GET /user | Get user information |
| UserApi | user_password_post | POST /user/password | Change password |
| UserApi | user_password_reset_post | POST /user/password/reset | Resets a password |
| UserApi | user_password_token_post | POST /user/password/token | Request password reset token |
| UserApi | user_settings_avatar_get | GET /user/settings/avatar | Return user avatar setting |
| UserApi | user_settings_avatar_post | POST /user/settings/avatar | Set the user's avatar |
| UserApi | user_settings_avatar_upload_put | PUT /user/settings/avatar/upload | Upload a user avatar |
| UserApi | user_settings_email_post | POST /user/settings/email | Update email address |
| UserApi | user_settings_general_post | POST /user/settings/general | Change general user settings of the current user. |
| UserApi | user_settings_token_caldav_get | GET /user/settings/token/caldav | Returns the caldav tokens for the current user |
| UserApi | user_settings_token_caldav_id_get | GET /user/settings/token/caldav/{id} | Delete a caldav token by id |
| UserApi | user_settings_token_caldav_put | PUT /user/settings/token/caldav | Generate a caldav token |
| UserApi | user_settings_totp_disable_post | POST /user/settings/totp/disable | Disable totp settings |
| UserApi | user_settings_totp_enable_post | POST /user/settings/totp/enable | Enable a previously enrolled totp setting. |
| UserApi | user_settings_totp_enroll_post | POST /user/settings/totp/enroll | Enroll a user into totp |
| UserApi | user_settings_totp_get | GET /user/settings/totp | Totp setting for the current user |
| UserApi | user_settings_totp_qrcode_get | GET /user/settings/totp/qrcode | Totp QR Code |
| UserApi | user_timezones_get | GET /user/timezones | Get all available time zones on this vikunja instance |
| UserApi | user_token_post | POST /user/token | Renew user token |
| UserApi | username_avatar_get | GET /{username}/avatar | User Avatar |
| UserApi | users_get | GET /users | Get users |
| WebhooksApi | projects_id_webhooks_get | GET /projects/{id}/webhooks | Get all api webhook targets for the specified project |
| WebhooksApi | projects_id_webhooks_put | PUT /projects/{id}/webhooks | Create a webhook target |
| WebhooksApi | projects_id_webhooks_webhook_id_delete | DELETE /projects/{id}/webhooks/{webhookID} | Deletes an existing webhook target |
| WebhooksApi | projects_id_webhooks_webhook_id_post | POST /projects/{id}/webhooks/{webhookID} | Change a webhook target's events. |
| WebhooksApi | webhooks_events_get | GET /webhooks/events | Get all possible webhook events |
Documentation For Models
- AuthToken
- BackgroundImage
- FilesFile
- HandlerAuthUrl
- MicrosofttodoMigration
- MigrationStatus
- ModelsApiToken
- ModelsBucket
- ModelsBucketConfigurationModeKind
- ModelsBulkAssignees
- ModelsBulkTask
- ModelsDatabaseNotifications
- ModelsLabel
- ModelsLabelTask
- ModelsLabelTaskBulk
- ModelsLinkSharing
- ModelsMessage
- ModelsProject
- ModelsProjectDuplicate
- ModelsProjectUser
- ModelsProjectView
- ModelsProjectViewBucketConfiguration
- ModelsProjectViewKind
- ModelsReaction
- ModelsRelationKind
- ModelsReminderRelation
- ModelsRight
- ModelsRouteDetail
- ModelsSavedFilter
- ModelsSharingType
- ModelsSubscription
- ModelsTask
- ModelsTaskAssginee
- ModelsTaskAttachment
- ModelsTaskBucket
- ModelsTaskCollection
- ModelsTaskComment
- ModelsTaskPosition
- ModelsTaskRelation
- ModelsTaskReminder
- ModelsTaskRepeatMode
- ModelsTeam
- ModelsTeamMember
- ModelsTeamProject
- ModelsTeamUser
- ModelsTeamWithRight
- ModelsUserWithRight
- ModelsWebhook
- NotificationsDatabaseNotification
- OpenidCallback
- OpenidProvider
- TodoistMigration
- TrelloMigration
- UserApiUserPassword
- UserEmailConfirm
- UserEmailUpdate
- UserLogin
- UserPasswordReset
- UserPasswordTokenRequest
- UserToken
- UserTotp
- UserTotpPasscode
- UserUser
- V1AuthInfo
- V1LegalInfo
- V1LinkShareAuth
- V1LocalAuthInfo
- V1OpenIdAuthInfo
- V1UserAvatarProvider
- V1UserDeletionRequestConfirm
- V1UserPassword
- V1UserPasswordConfirmation
- V1UserSettings
- V1UserWithSettings
- V1VikunjaInfos
- WebHttpError
To get access to the crate's generated documentation, use:
cargo doc --open