{
  "service": "toggl",
  "displayName": "Toggl Track",
  "categories": [
    "Productivity"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Token",
      "placeholder": "toggl_api_token",
      "description": "Toggl Track API token. It is sent with HTTP Basic auth as <token>:api_token."
    }
  ],
  "homepageUrl": "https://toggl.com/track",
  "actions": [
    {
      "id": "toggl.create_project",
      "service": "toggl",
      "name": "create_project",
      "description": "Create a Toggl Track project.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "description": "The project name."
          },
          "active": {
            "type": "boolean",
            "description": "Whether the project should be active."
          },
          "billable": {
            "type": "boolean",
            "description": "Whether the project should be billable."
          },
          "clientId": {
            "type": "integer",
            "minimum": 1,
            "description": "The client ID to associate with the project."
          },
          "clientName": {
            "type": "string",
            "minLength": 1,
            "description": "The client name to associate with the project."
          },
          "color": {
            "type": "string",
            "minLength": 1,
            "description": "The hex color string used for the project."
          },
          "currency": {
            "type": "string",
            "minLength": 1,
            "description": "The currency code stored on the project."
          },
          "isPrivate": {
            "type": "boolean",
            "description": "Whether the project should be private."
          },
          "isShared": {
            "type": "boolean",
            "description": "Whether the project should be shared."
          },
          "rate": {
            "type": "number",
            "description": "The hourly rate stored on the project."
          },
          "rateChangeMode": {
            "type": "string",
            "minLength": 1,
            "description": "The rate change mode stored on the project."
          },
          "startDate": {
            "type": "string",
            "description": "The project start date in YYYY-MM-DD format.",
            "format": "date"
          },
          "endDate": {
            "type": "string",
            "description": "The project end date in YYYY-MM-DD format.",
            "format": "date"
          },
          "estimatedHours": {
            "type": "integer",
            "minimum": 0,
            "description": "The estimated project duration in hours."
          },
          "template": {
            "type": "boolean",
            "description": "Whether the project should be marked as a template."
          },
          "templateId": {
            "type": "integer",
            "minimum": 1,
            "description": "The template ID used when creating a project from a template."
          }
        },
        "additionalProperties": false,
        "required": [
          "workspaceId"
        ],
        "description": "Input parameters for creating a Toggl Track project."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "project": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Toggl Track object returned by the API."
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.create_tag",
      "service": "toggl",
      "name": "create_tag",
      "description": "Create a Toggl Track tag.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "description": "The tag name."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for creating a Toggl Track tag."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "tag": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Toggl Track object returned by the API."
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.create_task",
      "service": "toggl",
      "name": "create_task",
      "description": "Create a Toggl Track task.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          },
          "projectId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track project ID."
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "description": "The task name."
          },
          "active": {
            "type": "boolean",
            "description": "Whether the task should be active."
          },
          "estimatedSeconds": {
            "type": "integer",
            "minimum": 0,
            "description": "The estimated task duration in seconds."
          },
          "externalReference": {
            "type": "string",
            "minLength": 1,
            "description": "The external reference stored on the task."
          },
          "userId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track user ID."
          }
        },
        "additionalProperties": false,
        "required": [
          "workspaceId",
          "projectId",
          "name"
        ],
        "description": "Input parameters for creating a Toggl Track task."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "task": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Toggl Track object returned by the API."
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.create_time_entry",
      "service": "toggl",
      "name": "create_time_entry",
      "description": "Create a Toggl Track time entry.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          },
          "billable": {
            "type": "boolean",
            "description": "Whether the time entry should be billable."
          },
          "createdWith": {
            "type": "string",
            "minLength": 1,
            "description": "The client identifier stored on the time entry."
          },
          "description": {
            "type": "string",
            "description": "The time entry description."
          },
          "duration": {
            "type": "integer",
            "minimum": 0,
            "description": "The time entry duration in seconds."
          },
          "projectId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track project ID."
          },
          "start": {
            "type": "string",
            "description": "An ISO 8601 date-time string with an explicit UTC offset.",
            "format": "date-time"
          },
          "startDate": {
            "type": "string",
            "description": "The date part used together with start when creating the time entry.",
            "format": "date"
          },
          "stop": {
            "type": "string",
            "description": "An ISO 8601 date-time string with an explicit UTC offset.",
            "format": "date-time"
          },
          "tagIds": {
            "type": "array",
            "items": {
              "type": "integer",
              "minimum": 1,
              "description": "The Toggl Track tag ID."
            },
            "description": "The tag IDs attached to the time entry.",
            "minItems": 1
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1
            },
            "description": "The tag names attached to the time entry.",
            "minItems": 1
          },
          "taskId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track task ID."
          },
          "userId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track user ID."
          }
        },
        "additionalProperties": false,
        "required": [
          "workspaceId",
          "start"
        ],
        "description": "Input parameters for creating a Toggl Track time entry."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "time_entry": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Toggl Track object returned by the API."
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.delete_project",
      "service": "toggl",
      "name": "delete_project",
      "description": "Delete a Toggl Track project.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          },
          "projectId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track project ID."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for getting a Toggl Track project."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "deleted": {
            "const": true,
            "type": "boolean"
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.delete_tag",
      "service": "toggl",
      "name": "delete_tag",
      "description": "Delete a Toggl Track tag.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          },
          "tagId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track tag ID."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for a Toggl Track tag."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "deleted": {
            "const": true,
            "type": "boolean"
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.delete_task",
      "service": "toggl",
      "name": "delete_task",
      "description": "Delete a Toggl Track task.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          },
          "projectId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track project ID."
          },
          "taskId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track task ID."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for getting a Toggl Track task."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "deleted": {
            "const": true,
            "type": "boolean"
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.delete_time_entry",
      "service": "toggl",
      "name": "delete_time_entry",
      "description": "Delete a Toggl Track time entry.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          },
          "timeEntryId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track time entry ID."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for a Toggl Track time entry."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "deleted": {
            "const": true,
            "type": "boolean"
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.get_current_time_entry",
      "service": "toggl",
      "name": "get_current_time_entry",
      "description": "Get the currently running Toggl Track time entry, if any.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "description": "Input parameters for this Toggl Track action."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "time_entry": {
            "anyOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "A Toggl Track object returned by the API."
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.get_current_user",
      "service": "toggl",
      "name": "get_current_user",
      "description": "Get the current Toggl Track user profile.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "description": "Input parameters for this Toggl Track action."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "user": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Toggl Track object returned by the API."
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.get_project",
      "service": "toggl",
      "name": "get_project",
      "description": "Get one Toggl Track project.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          },
          "projectId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track project ID."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for getting a Toggl Track project."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "project": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Toggl Track object returned by the API."
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.get_task",
      "service": "toggl",
      "name": "get_task",
      "description": "Get one Toggl Track task.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          },
          "projectId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track project ID."
          },
          "taskId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track task ID."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for getting a Toggl Track task."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "task": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Toggl Track object returned by the API."
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.get_time_entry",
      "service": "toggl",
      "name": "get_time_entry",
      "description": "Get one Toggl Track time entry.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "timeEntryId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track time entry ID."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for getting a Toggl Track time entry."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "time_entry": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Toggl Track object returned by the API."
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.get_workspace",
      "service": "toggl",
      "name": "get_workspace",
      "description": "Get one Toggl Track workspace.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for getting a Toggl Track workspace."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "workspace": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Toggl Track object returned by the API."
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.list_projects",
      "service": "toggl",
      "name": "list_projects",
      "description": "List Toggl Track projects in a workspace.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          },
          "active": {
            "anyOf": [
              {
                "type": "boolean",
                "description": "Whether to return only active projects."
              },
              {
                "const": "both",
                "type": "string"
              }
            ],
            "description": "Whether to return only active projects or both active and inactive projects."
          },
          "since": {
            "type": "integer",
            "minimum": 0,
            "description": "A UNIX timestamp used to fetch changed projects since that moment."
          },
          "page": {
            "type": "integer",
            "minimum": 1,
            "description": "The 1-based page number to request."
          },
          "sortField": {
            "type": "string",
            "minLength": 1,
            "description": "The project field used for sorting the result set."
          },
          "sortOrder": {
            "type": "string",
            "minLength": 1,
            "description": "The sort direction used for ordering the result set."
          },
          "perPage": {
            "type": "integer",
            "minimum": 1,
            "maximum": 200,
            "description": "The maximum number of items to return per page."
          },
          "search": {
            "type": "string",
            "minLength": 1,
            "description": "A search string used to filter projects by name."
          }
        },
        "additionalProperties": false,
        "required": [
          "workspaceId"
        ],
        "description": "Input parameters for listing Toggl Track projects in a workspace."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "projects": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A Toggl Track object returned by the API."
            },
            "description": "The Toggl Track projects."
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.list_tags",
      "service": "toggl",
      "name": "list_tags",
      "description": "List Toggl Track tags in a workspace.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          },
          "page": {
            "type": "integer",
            "minimum": 1,
            "description": "The 1-based page number to request."
          },
          "perPage": {
            "type": "integer",
            "minimum": 1,
            "maximum": 200,
            "description": "The maximum number of items to return per page."
          },
          "search": {
            "type": "string",
            "minLength": 1,
            "description": "A search string used to filter tags by name."
          }
        },
        "additionalProperties": false,
        "required": [
          "workspaceId"
        ],
        "description": "Input parameters for listing Toggl Track tags in a workspace."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "tags": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A Toggl Track object returned by the API."
            },
            "description": "The Toggl Track tags."
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.list_tasks",
      "service": "toggl",
      "name": "list_tasks",
      "description": "List Toggl Track tasks in a project.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          },
          "projectId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track project ID."
          },
          "active": {
            "type": "boolean",
            "description": "Whether to return only active tasks."
          }
        },
        "additionalProperties": false,
        "required": [
          "workspaceId",
          "projectId"
        ],
        "description": "Input parameters for listing tasks in a Toggl Track project."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "tasks": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A Toggl Track object returned by the API."
            },
            "description": "The Toggl Track tasks."
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.list_time_entries",
      "service": "toggl",
      "name": "list_time_entries",
      "description": "List Toggl Track time entries for the current user.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "since": {
            "anyOf": [
              {
                "type": "string",
                "description": "An ISO 8601 date string.",
                "format": "date"
              },
              {
                "type": "string",
                "description": "An ISO 8601 date-time string with an explicit UTC offset.",
                "format": "date-time"
              }
            ],
            "description": "An ISO 8601 date or date-time string."
          },
          "before": {
            "anyOf": [
              {
                "type": "string",
                "description": "An ISO 8601 date string.",
                "format": "date"
              },
              {
                "type": "string",
                "description": "An ISO 8601 date-time string with an explicit UTC offset.",
                "format": "date-time"
              }
            ],
            "description": "An ISO 8601 date or date-time string."
          },
          "startDate": {
            "anyOf": [
              {
                "type": "string",
                "description": "An ISO 8601 date string.",
                "format": "date"
              },
              {
                "type": "string",
                "description": "An ISO 8601 date-time string with an explicit UTC offset.",
                "format": "date-time"
              }
            ],
            "description": "An ISO 8601 date or date-time string."
          },
          "endDate": {
            "anyOf": [
              {
                "type": "string",
                "description": "An ISO 8601 date string.",
                "format": "date"
              },
              {
                "type": "string",
                "description": "An ISO 8601 date-time string with an explicit UTC offset.",
                "format": "date-time"
              }
            ],
            "description": "An ISO 8601 date or date-time string."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for listing Toggl Track time entries."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "time_entries": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A Toggl Track object returned by the API."
            },
            "description": "The Toggl Track time entries."
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.list_workspaces",
      "service": "toggl",
      "name": "list_workspaces",
      "description": "List Toggl Track workspaces for the current user.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "description": "Input parameters for this Toggl Track action."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "workspaces": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A Toggl Track object returned by the API."
            },
            "description": "The Toggl Track workspaces."
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.stop_time_entry",
      "service": "toggl",
      "name": "stop_time_entry",
      "description": "Stop a running Toggl Track time entry.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          },
          "timeEntryId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track time entry ID."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for a Toggl Track time entry."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "time_entry": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Toggl Track object returned by the API."
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.update_project",
      "service": "toggl",
      "name": "update_project",
      "description": "Update a Toggl Track project.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          },
          "projectId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track project ID."
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "description": "The project name."
          },
          "active": {
            "type": "boolean",
            "description": "Whether the project should be active."
          },
          "billable": {
            "type": "boolean",
            "description": "Whether the project should be billable."
          },
          "clientId": {
            "type": "integer",
            "minimum": 1,
            "description": "The client ID to associate with the project."
          },
          "clientName": {
            "type": "string",
            "minLength": 1,
            "description": "The client name to associate with the project."
          },
          "color": {
            "type": "string",
            "minLength": 1,
            "description": "The hex color string used for the project."
          },
          "currency": {
            "type": "string",
            "minLength": 1,
            "description": "The currency code stored on the project."
          },
          "isPrivate": {
            "type": "boolean",
            "description": "Whether the project should be private."
          },
          "isShared": {
            "type": "boolean",
            "description": "Whether the project should be shared."
          },
          "rate": {
            "type": "number",
            "description": "The hourly rate stored on the project."
          },
          "rateChangeMode": {
            "type": "string",
            "minLength": 1,
            "description": "The rate change mode stored on the project."
          },
          "startDate": {
            "type": "string",
            "description": "The project start date in YYYY-MM-DD format.",
            "format": "date"
          },
          "endDate": {
            "type": "string",
            "description": "The project end date in YYYY-MM-DD format.",
            "format": "date"
          },
          "estimatedHours": {
            "type": "integer",
            "minimum": 0,
            "description": "The estimated project duration in hours."
          },
          "template": {
            "type": "boolean",
            "description": "Whether the project should be marked as a template."
          },
          "templateId": {
            "type": "integer",
            "minimum": 1,
            "description": "The template ID used when creating a project from a template."
          }
        },
        "additionalProperties": false,
        "required": [
          "workspaceId",
          "projectId"
        ],
        "description": "Input parameters for updating a Toggl Track project."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "project": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Toggl Track object returned by the API."
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.update_tag",
      "service": "toggl",
      "name": "update_tag",
      "description": "Update a Toggl Track tag.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          },
          "tagId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track tag ID."
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "description": "The updated tag name."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for updating a Toggl Track tag."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "tag": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Toggl Track object returned by the API."
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.update_task",
      "service": "toggl",
      "name": "update_task",
      "description": "Update a Toggl Track task.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          },
          "projectId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track project ID."
          },
          "taskId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track task ID."
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "description": "The task name."
          },
          "active": {
            "type": "boolean",
            "description": "Whether the task should be active."
          },
          "estimatedSeconds": {
            "type": "integer",
            "minimum": 0,
            "description": "The estimated task duration in seconds."
          },
          "externalReference": {
            "type": "string",
            "minLength": 1,
            "description": "The external reference stored on the task."
          },
          "userId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track user ID."
          }
        },
        "additionalProperties": false,
        "required": [
          "workspaceId",
          "projectId",
          "taskId"
        ],
        "description": "Input parameters for updating a Toggl Track task."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "task": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Toggl Track object returned by the API."
          }
        },
        "additionalProperties": false
      }
    },
    {
      "id": "toggl.update_time_entry",
      "service": "toggl",
      "name": "update_time_entry",
      "description": "Update a Toggl Track time entry.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track workspace ID."
          },
          "timeEntryId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track time entry ID."
          },
          "billable": {
            "type": "boolean",
            "description": "Whether the time entry should be billable."
          },
          "createdWith": {
            "type": "string",
            "minLength": 1,
            "description": "The client identifier stored on the time entry."
          },
          "description": {
            "type": "string",
            "description": "The time entry description."
          },
          "duration": {
            "type": "integer",
            "minimum": 0,
            "description": "The time entry duration in seconds."
          },
          "projectId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track project ID."
          },
          "start": {
            "type": "string",
            "description": "An ISO 8601 date-time string with an explicit UTC offset.",
            "format": "date-time"
          },
          "startDate": {
            "type": "string",
            "description": "The date part used together with start when creating the time entry.",
            "format": "date"
          },
          "stop": {
            "type": "string",
            "description": "An ISO 8601 date-time string with an explicit UTC offset.",
            "format": "date-time"
          },
          "tagIds": {
            "type": "array",
            "items": {
              "type": "integer",
              "minimum": 1,
              "description": "The Toggl Track tag ID."
            },
            "description": "The tag IDs attached to the time entry.",
            "minItems": 1
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1
            },
            "description": "The tag names attached to the time entry.",
            "minItems": 1
          },
          "taskId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track task ID."
          },
          "userId": {
            "type": "integer",
            "minimum": 1,
            "description": "The Toggl Track user ID."
          }
        },
        "additionalProperties": false,
        "required": [
          "workspaceId",
          "timeEntryId"
        ],
        "description": "Input parameters for updating a Toggl Track time entry."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "time_entry": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Toggl Track object returned by the API."
          }
        },
        "additionalProperties": false
      }
    }
  ]
}
