### Donetick Smart Task Creation Examples Source: https://docs.donetick.com/getting-started/smart-task-creation Examples of natural language sentences that Donetick can parse to create tasks. These examples demonstrate setting task descriptions, priorities, and due dates. ```text Take out trash tomorrow P1 Water plants every Monday Buy groceries next Friday at 5pm ``` -------------------------------- ### Donetick API: Created Chore Response Example Source: https://docs.donetick.com/advance-settings/api Example JSON structure for the response when creating a chore via the Donetick API. It confirms the creation and includes details of the newly created chore, similar to the list chores response. ```json { "id": 16, "name": "Record TV on a VHS tape like it's 1990", "frequencyType": "once", "frequency": 0, "frequencyMetadata": null, "nextDueDate": "2025-08-30T19:51:50Z", "isRolling": false, "assignedTo": 1, "assignees": [ { "userId": 1 } ], "assignStrategy": "random", "isActive": true, "notification": false, "notificationMetadata": null, "labels": null, "labelsV2": [], "circleId": 1, "createdAt": "2025-08-05T05:58:48.581383404Z", "updatedAt": "2025-08-05T05:58:48.581496335Z", "createdBy": 1, "updatedBy": 0, "thingChore": null, "status": 0, "priority": 0, "subTasks": [] } ``` -------------------------------- ### Donetick API: Chore Response Example Source: https://docs.donetick.com/advance-settings/api Example JSON structure for a chore object returned by the Donetick API when listing chores. It includes details like ID, name, frequency, due date, assignees, labels, and timestamps. ```json { "id": 1, "name": "Put laundry in the washing machine", "frequencyType": "once", "frequency": 1, "frequencyMetadata": {}, "nextDueDate": null, "isRolling": false, "assignedTo": 1, "assignees": [ { "userId": 1 } ], "assignStrategy": "least_completed", "isActive": true, "notification": false, "notificationMetadata": {}, "labels": null, "labelsV2": [ { "id": 1, "name": "Fun", "color": "#8d6e63", "created_by": 1 }, { "id": 2, "name": "Happy", "color": "#0288d1", "created_by": 1 } ], "circleId": 1, "createdAt": "2025-08-01T02:02:18.384083907Z", "updatedAt": "2025-08-01T02:02:18.384137074Z", "createdBy": 1, "updatedBy": 1, "thingChore": null, "status": 0, "priority": 0, "description": "

This description includes formatted text

" } ``` -------------------------------- ### Docker Compose Volume Mount for Local Storage Source: https://docs.donetick.com/advance-settings/storage-setup This Docker Compose configuration example shows how to mount a persistent volume for Donetick's local storage. This is crucial for preventing data loss when using local storage, especially in Docker environments. ```yaml donetick: image: donetick/donetick:latest # ...other config... volumes: - ./data/assets:/app/assets ``` -------------------------------- ### Donetick Docker Compose Configuration Source: https://docs.donetick.com/index Defines the services, image, ports, volumes, and environment variables for running Donetick using Docker Compose. This file configures the application's setup and data persistence. ```yaml version:"3.9"# Or your preferred version services: donetick: image: donetick/donetick container_name: donetick restart: unless-stopped ports: -"2021:2021" volumes: - ./data:/donetick-data # Maps./data on your host to /donetick-data in the container - ./config:/config # Maps./config on your host to /config in the container environment: - DT_ENV=selfhosted - DT_SQLITE_PATH=/donetick-data/donetick.db ``` -------------------------------- ### Run Docker Compose Source: https://docs.donetick.com/index Starts the Donetick services defined in the docker-compose.yml file in detached mode. This command is used to launch the application in the background. ```bash docker-compose up -d ``` -------------------------------- ### Disable Donetick User Signups via Environment Variable Source: https://docs.donetick.com/getting-started/configration This example shows how to disable new user signups in Donetick by setting a specific environment variable. It uses the `DONETICK_DISABLE_SIGNUP` variable to control this functionality. ```Shell export DONETICK_DISABLE_SIGNUP=true ``` -------------------------------- ### Donetick API: Get List of Chores Source: https://docs.donetick.com/advance-settings/api Retrieves all chores from the Donetick API. This is a GET request that requires an 'secretkey' header containing an access token. The response is a JSON-encoded array of chore objects. ```http GET https://[your instance]/eapi/v1/chore Header: secretkey: [your access token] ``` -------------------------------- ### Configure Donetick Telegram Token via Environment Variable Source: https://docs.donetick.com/getting-started/configration This example shows how to override the Telegram bot token for Donetick using a dedicated environment variable. It highlights the use of a specific prefix `DONETICK_` for certain overrides. ```Shell export DONETICK_TELEGRAM_TOKEN="your_telegram_bot_token" ``` -------------------------------- ### Donetick API Reference Source: https://docs.donetick.com/category/advanced-settings Provides a link to the Go source code for Donetick's API, intended for programmatic interaction with the service. Users can refer to this file for a comprehensive listing of API endpoints and functionalities. ```Go https://github.com/donetick/donetick/blob/main/internal/chore/api.go ``` -------------------------------- ### Run Donetick Binary with Environment Variable Source: https://docs.donetick.com/getting-started Executes the Donetick binary directly, setting the DT_ENV environment variable to 'selfhosted' to configure the application for self-hosting. This method is suitable when not using Docker or Docker Compose. ```bash DT_ENV=selfhosted./donetick ``` -------------------------------- ### Run Donetick Docker Container Source: https://docs.donetick.com/getting-started Runs the Donetick Docker container, mounting host directories for data persistence, mapping ports, and setting environment variables for configuration. Key environment variables include DT_ENV for setting the environment (e.g., 'selfhosted') and DT_SQLITE_PATH for the database location. ```bash docker run -v /path/to/host/data:/donetick-data -p 2021:2021 \ -e DT_ENV=selfhosted \ -e DT_SQLITE_PATH=/donetick-data/donetick.db \ donetick/donetick ``` -------------------------------- ### Configure OIDC Authentication via YAML Source: https://docs.donetick.com/advance-settings/openid-connect-setup This snippet shows the YAML configuration for setting up OpenID Connect (OIDC) authentication in Donetick. It includes client ID, secret, redirect URL, scopes, and URLs for authentication, token exchange, and user info. ```yaml oauth2: client_id:"your-client-id" client_secret:"your-client-secret" redirect_url:"https://your-donetick-instance.com/auth/oauth2" scopes: -"openid" -"profile" -"email" auth_url:"https://your-oidc-provider.com/auth" token_url:"https://your-oidc-provider.com/token" user_info_url:"https://your-oidc-provider.com/userinfo" name:"Your Provider Name" ``` -------------------------------- ### Run Donetick Docker Container Source: https://docs.donetick.com/index Runs the Donetick Docker container, mounting host directories for data persistence, mapping ports, and setting environment variables for configuration and database path. ```bash docker run -v /path/to/host/data:/donetick-data -p 2021:2021 \ -e DT_ENV=selfhosted \ -e DT_SQLITE_PATH=/donetick-data/donetick.db \ donetick/donetick ``` -------------------------------- ### Run Donetick Binary Source: https://docs.donetick.com/index Executes the Donetick binary directly, setting the DT_ENV environment variable to 'selfhosted'. This method is for running the application without Docker. ```bash DT_ENV=selfhosted./donetick ``` -------------------------------- ### Configure Donetick Storage via YAML Source: https://docs.donetick.com/advance-settings/storage-setup This YAML configuration snippet shows how to set up Donetick's remote storage. It includes parameters for storage type, bucket name, region, access keys, endpoint, and file size limits. ```yaml storage: storage_type:"remote" bucket_name:"your-bucket-name" region:"us-east-1" base_path:"assets" access_key:"your-access-key" secret_key:"your-secret-key" endpoint:"https://your-endpoint.com" public_host:"https://your-cdn.com"# Optional max_user_storage:104857600# 100MB max_file_size:2097152# 2MB ``` -------------------------------- ### Pull Donetick Docker Image Source: https://docs.donetick.com/getting-started Pulls the latest Donetick Docker image from the Docker Hub registry. This is the first step before running Donetick using Docker. ```bash docker pull donetick/donetick ``` -------------------------------- ### Set Donetick Configuration Environment Source: https://docs.donetick.com/getting-started/configration This snippet illustrates how to specify the configuration environment for Donetick using the `DT_ENV` environment variable. This allows switching between different configurations, such as 'local', 'prod', or 'selfhosted'. ```Shell export DT_ENV=prod ``` -------------------------------- ### Configure Donetick Storage via Environment Variables Source: https://docs.donetick.com/advance-settings/storage-setup This snippet demonstrates how to configure Donetick's storage settings using environment variables. Each variable corresponds to a specific storage parameter, such as type, bucket name, region, and credentials. ```bash DT_STORAGE_STORAGE_TYPE=remote DT_STORAGE_BUCKET_NAME=your-bucket-name DT_STORAGE_REGION=us-east-1 DT_STORAGE_BASE_PATH=assets DT_STORAGE_ACCESS_KEY=your-access-key DT_STORAGE_SECRET_KEY=your-secret-key DT_STORAGE_ENDPOINT=https://your-endpoint.com DT_STORAGE_PUBLIC_HOST=https://your-cdn.com # Optional DT_STORAGE_MAX_USER_STORAGE=104857600 DT_STORAGE_MAX_FILE_SIZE=2097152 ``` -------------------------------- ### Configure Donetick Pushover Token via Environment Variable Source: https://docs.donetick.com/getting-started/configration This snippet demonstrates overriding the Pushover API token for Donetick using an environment variable. Similar to the Telegram token, it uses the `DONETICK_` prefix for this specific configuration. ```Shell export DONETICK_PUSHOVER_TOKEN="your_pushover_api_token" ``` -------------------------------- ### Docker Compose Configuration for Donetick Source: https://docs.donetick.com/getting-started Defines the Docker Compose configuration for running Donetick. It specifies the image, container name, restart policy, port mappings, volume mounts for data and configuration, and environment variables. ```yaml version:"3.9"# Or your preferred version services: donetick: image: donetick/donetick container_name: donetick restart: unless-stopped ports: -"2021:2021" volumes: - ./data:/donetick-data # Maps./data on your host to /donetick-data in the container - ./config:/config # Maps./config on your host to /config in the container environment: - DT_ENV=selfhosted - DT_SQLITE_PATH=/donetick-data/donetick.db ``` -------------------------------- ### Donetick API: Create Chore Source: https://docs.donetick.com/advance-settings/api Creates a new chore in the Donetick API. This is a POST request that requires a JSON-encoded body containing chore details such as 'Name' and 'DueDate'. Unrecognized properties in the body are ignored. ```http POST https://[your instance]/eapi/v1/chore Header: secretkey: [your access token] Body: { "Name": "Record TV on a VHS tape like it's 1990", "DueDate": "2025-08-30T19:51:50.000Z" } ``` -------------------------------- ### Configure Donetick OAuth2 Client ID via Environment Variable Source: https://docs.donetick.com/getting-started/configration This snippet illustrates how to set the OAuth2 client ID for Donetick using an environment variable. It shows the convention of prefixing the configuration key with `DT_` and converting it to uppercase, in this case, `DT_OAUTH2_CLIENT_ID`. ```Shell export DT_OAUTH2_CLIENT_ID="your_client_id" ``` -------------------------------- ### Pull Donetick Docker Image Source: https://docs.donetick.com/index Pulls the latest Donetick Docker image from the Docker Hub registry. This is the first step before running Donetick using Docker. ```bash docker pull donetick/donetick ``` -------------------------------- ### Configure Donetick with Pushover Source: https://docs.donetick.com/notifications/pushover This snippet shows how to configure Donetick to send notifications via Pushover. It requires updating the `config.yaml` file with Pushover-specific settings, including the application and user keys. ```yaml notifications: pushover: user_key: "YOUR_PUSHOVER_USER_KEY" token: "YOUR_PUSHOVER_APP_TOKEN" ``` -------------------------------- ### Configure Donetick Server Port via Environment Variable Source: https://docs.donetick.com/getting-started/configration This snippet demonstrates how to override the server port configuration for Donetick using an environment variable. It specifically shows how to set the `DT_SERVER_PORT` environment variable to change the default server port. ```Shell export DT_SERVER_PORT=8080 ``` -------------------------------- ### Donetick Webhook Event Payload Structure Source: https://docs.donetick.com/advance-settings/webhooks This snippet illustrates the common JSON structure for Donetick webhook events. It includes the event type, timestamp, and event-specific data. ```json { "type": "event_type", "timestamp": "timestamp", "data": { // ... event data ... } } ``` -------------------------------- ### Authenticate API Request with Access Token Source: https://docs.donetick.com/advance-settings/access-token Demonstrates how to include an access token in the 'secret' header for authenticating Donetick API requests. This is crucial for applications or scripts interacting with Donetick programmatically. ```HTTP GET /api/resource Host: api.donetick.com secret: YOUR_ACCESS_TOKEN ``` -------------------------------- ### Configure Donetick for Telegram Notifications Source: https://docs.donetick.com/notifications/telegram This snippet shows how to configure Donetick to send notifications via Telegram. It involves updating the `config.yaml` file with Telegram-specific settings, including the bot token and chat ID. After configuration, Donetick needs to be restarted. ```yaml telegram: bot_token: "YOUR_TELEGRAM_BOT_TOKEN" chat_id: "YOUR_TELEGRAM_CHAT_ID" ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.