{
    "swagger": "2.0",
    "info": {
        "description": "Public Toggl API.\nNote:\nWe use BasicAuth in a specific way. By the standard you provide `Authentication` header with `base64(user_name:password)` as a `credential`.\nIn our case it will be `base64(user_name:api_token)`.",
        "title": "Toggl API",
        "termsOfService": "https://toggl.com/terms/",
        "contact": {},
        "license": {
            "name": "Toggl Proprietary License"
        },
        "version": "9"
    },
    "host": "localhost:8080",
    "basePath": "/api/v9",
    "paths": {
        "/audit_logs/{organization_id}/{from}/{to}": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Returns a list of audit log events for the specified organization and time range.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "audit_logs"
                ],
                "summary": "Fetch audit logs.",
                "operationId": "get-audit-logs",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Start datetime in RFC3339 format",
                        "name": "from",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "End datetime in RFC3339 format",
                        "name": "to",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "boolean",
                        "description": "If set to true, returns all audit logs without pagination",
                        "name": "export",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Workspace ID",
                        "name": "workspace_id",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Entity Type",
                        "name": "entity_type",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Entity ID",
                        "name": "entity_id",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Action",
                        "name": "action",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "User ID",
                        "name": "user_id",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Page Size",
                        "name": "page_size",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Page Number",
                        "name": "page_number",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {}
                        }
                    },
                    "403": {
                        "description": "User does not have access to the audit logs",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Server error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/auth/saml2/login": {
            "get": {
                "description": "Returns the SSO URL given an email address for authenticating in an Identity Provider.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "authentication"
                ],
                "summary": "SAML2 Identity Provider URL",
                "operationId": "get-saml2-login-url",
                "parameters": [
                    {
                        "type": "string",
                        "description": "User email",
                        "name": "email",
                        "in": "query",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Client identification (webapp/toggl-button/client) TODO: add desktop identification",
                        "name": "client",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "State to be preserved when redirecting to Accounts API",
                        "name": "state",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/saml2.LoginResponse"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003einvalid email address\u003c/li\u003e\u003cli\u003eSSO is not configured for this email address\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "We're sorry, but something went terribly wrong. We have been notified about the error. Please try again later.",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/auth/saml2/login/{workspace_id}": {
            "post": {
                "description": "Receives the IdP Callback containing the SAML2 assertion with response of user authentication in the IdP.",
                "tags": [
                    "authentication"
                ],
                "summary": "SAML2 Identity Provider Callback",
                "operationId": "post-saml2-callback",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "SAML2 assertion with authentication response",
                        "name": "SAMLResponse",
                        "in": "formData",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Encoded string containing client and host which originated the requests",
                        "name": "RelayState",
                        "in": "formData"
                    }
                ],
                "responses": {
                    "302": {
                        "description": "Authentication result URI",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "We're sorry, but something went terribly wrong. We have been notified about the error. Please try again later.",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/avatars": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Handles POST avatar requests.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "avatars"
                ],
                "summary": "Avatars",
                "operationId": "post-avatars",
                "parameters": [
                    {
                        "type": "string",
                        "description": "file form data",
                        "name": "file",
                        "in": "formData",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.Avatar"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eInvalid content type for image\u003c/li\u003e\u003cli\u003eInvalid 'end_date' value\u003c/li\u003e\u003cli\u003eWe were unable to resize your image, please check your image and possibly convert it to a png or jpeg and try again\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Handles DELETE avatar requests.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "avatars"
                ],
                "summary": "Avatars",
                "operationId": "delete-avatars",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/avatars/use_gravatar": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Change user avatar to gravatar.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "avatars"
                ],
                "summary": "UseGravatar",
                "operationId": "post-use-gravatar",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.Avatar"
                        }
                    },
                    "400": {
                        "description": "Couldn't fetch your Gravatar. Are you using the same e-mail both in Toggl and Gravatar?",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/countries": {
            "get": {
                "description": "Returns a list of existing countries",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "countries"
                ],
                "summary": "Countries",
                "operationId": "get-countries",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Country"
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/countries/{country_id}/subdivisions": {
            "get": {
                "description": "Returns a list of subdivisions for a specific country.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "countries"
                ],
                "summary": "CountrySubdivisions",
                "operationId": "get-countries-country_id-subdivisions",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "country id",
                        "name": "country_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Subdivision"
                            }
                        }
                    },
                    "404": {
                        "description": "Invalid country code.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/currencies": {
            "get": {
                "description": "Returns a list of available currencies.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "Currencies",
                "operationId": "get-currencies",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Currency"
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/desktop_login": {
            "get": {
                "description": "Store new desktop login token",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "auth"
                ],
                "summary": "Get desktop login token",
                "responses": {
                    "302": {
                        "description": "Found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/desktop_login_tokens": {
            "post": {
                "description": "Store new desktop login token",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "auth"
                ],
                "summary": "Post desktop login token",
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/desktop.LoginToken"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/feedback": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Send Feedback",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "feedback"
                ],
                "summary": "Feedback",
                "operationId": "post-unified-feedback",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Toggl version.",
                        "name": "toggl_version",
                        "in": "formData",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Feedback date.",
                        "name": "date",
                        "in": "formData",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Feedback details.",
                        "name": "details",
                        "in": "formData",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Update channel.",
                        "name": "update_channel",
                        "in": "formData"
                    },
                    {
                        "type": "string",
                        "description": "Email subject.",
                        "name": "subject",
                        "in": "formData"
                    },
                    {
                        "type": "string",
                        "description": "Device Model.",
                        "name": "device_model",
                        "in": "formData"
                    },
                    {
                        "type": "string",
                        "description": "Build Number.",
                        "name": "build_number",
                        "in": "formData"
                    },
                    {
                        "type": "string",
                        "description": "Operating system.",
                        "name": "operating_system",
                        "in": "formData"
                    },
                    {
                        "type": "boolean",
                        "description": "Latest feedback.",
                        "name": "latest",
                        "in": "formData"
                    },
                    {
                        "type": "file",
                        "description": "One or more files.",
                        "name": "files",
                        "in": "formData"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Feedback sent."
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003ePlease specify the toggl_version and date when sending feedback.\u003c/li\u003e\u003cli\u003ePlease specify the details of your feedback.\u003c/li\u003e\u003c/ul\u003e"
                    },
                    "500": {
                        "description": "Something else went wrong."
                    }
                }
            }
        },
        "/ical/workspace_user/{token}": {
            "get": {
                "description": "Returns ical file with TEs from last 14 days",
                "produces": [
                    "text/calendar"
                ],
                "tags": [
                    "ical"
                ],
                "summary": "Ical file",
                "operationId": "get-ical",
                "parameters": [
                    {
                        "type": "string",
                        "description": "iCal token",
                        "name": "token",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation."
                    },
                    "403": {
                        "description": "Paid feature"
                    },
                    "404": {
                        "description": "Not found"
                    }
                }
            }
        },
        "/integrations/calendar": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get all integrations a user has. Each user may have at most one integration per provider.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "calendar"
                ],
                "summary": "Get all integrations a user has.",
                "responses": {
                    "200": {
                        "description": "Integrations successfully retrieved",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Integration"
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/integrations/calendar/calendars": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get all calendars for a given user that was previously saved in the database.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "calendar"
                ],
                "summary": "Get all calendars for a given user.",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Max results per page",
                        "name": "limit",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Token for next page. Used in pagination when the number of results exceed 'limit'",
                        "name": "page_token",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Filter calendars by the integration ID",
                        "name": "integration_id",
                        "in": "query"
                    },
                    {
                        "type": "boolean",
                        "description": "filter calendars by selected value",
                        "name": "selected",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Calendars successfully retrieved",
                        "schema": {
                            "$ref": "#/definitions/handlercalendar.CalendarsResponse"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003ewhile paginating the limit should be always the same\u003c/li\u003e\u003cli\u003einvalid limit format\u003c/li\u003e\u003cli\u003einvalid limit error. Please use a value between 0 and 250\u003c/li\u003e\u003cli\u003einvalid integration_id value\u003c/li\u003e\u003cli\u003einvalid selected value\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/integrations/calendar/calendars/selected": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get all selected calendars for a given user that was previously saved in the database.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "calendar"
                ],
                "summary": "Get all selected calendars for a given user.",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Max results per page",
                        "name": "limit",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Token for next page. Used in pagination when the number of results exceed 'limit'",
                        "name": "page_token",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Calendars successfully retrieved",
                        "schema": {
                            "$ref": "#/definitions/handlercalendar.CalendarsResponse"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003ewhile paginating the limit should be always the same\u003c/li\u003e\u003cli\u003einvalid limit error. Please use a value between 0 and 250\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/integrations/calendar/events": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get all events from selected calendars for the caller user. This endpoint will only return events if events were fetched from provider before the request is made. Check which is the endpoint for the events.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "calendar"
                ],
                "summary": "Get all events for the caller user.",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Smallest boundary date to search for calendar events",
                        "name": "start_date",
                        "in": "query",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Biggest boundary date to search for calendar events",
                        "name": "end_date",
                        "in": "query",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Max results per page",
                        "name": "limit",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Token for next page. Used in pagination when the number of results exceed 'limit'",
                        "name": "page_token",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Events successfully retrieved",
                        "schema": {
                            "$ref": "#/definitions/handlercalendar.EventsResponse"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003estart_date has invalid format\u003c/li\u003e\u003cli\u003eend_date has invalid format\u003c/li\u003e\u003cli\u003estart_date should not be empty\u003c/li\u003e\u003cli\u003eend_date should not be empty\u003c/li\u003e\u003cli\u003estart_date should come before end_date\u003c/li\u003e\u003cli\u003eUser {user_id} has an invalid timezone\u003c/li\u003e\u003cli\u003e{date} has invalid format\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/integrations/calendar/events/details-suggestion": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Given one or more event IDs, this endpoint responds with the most probable event details\n(and its accuracy) to assign to the to-be-created time entry for each event ID.\nThis endpoint will only suggests time entries with description and project not empty, because it uses\nthe description to tell if the TE is similar and the project as the main detail to be suggested.\n\nIf the description is equal, as well as all the other details, the accuracy will be 100%, in the case\nthe description is equal but the other details differs, the most frequent will be suggested and the\naccuracy will be given based on the frequency. In the case there is no TE with the same description\nthe most similar will be suggested based on the Jaro-Winkler algorithm, and the accuracy will be the\nsimilarity rating.\n\nThis endpoint returns status 200 OK with only the successful suggestions. Any event ID that is invalid\nor the user does not have access to will be ignored, as well as any event that has no available suggestion.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "calendar"
                ],
                "summary": "Get details suggestion for given events.",
                "parameters": [
                    {
                        "description": "Request body containing the event IDs we want to get the suggestion for",
                        "name": "request",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/handlercalendar.PostDetailsSuggestionRequest"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Suggestions for specified events",
                        "schema": {
                            "$ref": "#/definitions/handlercalendar.PostDetailsSuggestionResponse"
                        }
                    },
                    "400": {
                        "description": "Invalid, missing or too many event IDs",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/integrations/calendar/events/update": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Fetch all events from a user's selected calendars and save in database.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "calendar"
                ],
                "summary": "Update all events from selected calendars for a user.",
                "responses": {
                    "200": {
                        "description": "Amount of fetched events",
                        "schema": {
                            "$ref": "#/definitions/handlercalendar.Response"
                        }
                    },
                    "401": {
                        "description": "It's not possible to fetch data from the provider due to some constraint in the user account or an expired token",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User doesn't have access to this event",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003ean error happened while loading user integrations\u003c/li\u003e\u003cli\u003ean error happened while loading user calendars\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/integrations/calendar/events/{event_id}/details-suggestion": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Given an event ID, this endpoint responds with the most probable event details (and the accuracy) to\nassign to the to-be-created time entry.\nThis endpoint will only suggests time entries with description and project not empty, because it uses the\ndescription to tell if the TE is similar and the project as the main detail to be suggested.\n\nIf the description is equal, as well as all the other details, the accuracy will be 100%, in the case\nthe description is equal but the other details differs, the most frequent will be suggested and the\naccuracy will be given based on the frequency. In the case there is no TE with the same description\nthe most similar will be suggested based on the Jaro-Winkler algorithm, and the accuracy will be the\nsimilarity rating.\n\nThis endpoint returns status 200 OK and a \"null\" string in case no suggestion was found.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "calendar"
                ],
                "summary": "Get details suggestion for a given event.",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Calendar event ID which we want to get a possible project to match",
                        "name": "event_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Suggestion of project to fill",
                        "schema": {
                            "$ref": "#/definitions/models.Suggestion"
                        }
                    },
                    "400": {
                        "description": "Invalid event ID",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003ethe user has no access to this calendar feature\u003c/li\u003e\u003cli\u003ethe user has no access to this event\u003c/li\u003e\u003cli\u003eevent with ID {event_id} was not found\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/integrations/calendar/setup": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Set up an integration with a given provider, returning a URL to the said provider in order to",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "calendar"
                ],
                "summary": "Get URL for setting up a calendar integration with given provider.",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Calendar service provider which the calendars will be retrieved",
                        "name": "provider",
                        "in": "query",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Page to which the user will be redirected after authenticating",
                        "name": "return_to",
                        "in": "query"
                    }
                ],
                "responses": {
                    "302": {
                        "description": "URL to authenticate with the provider",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "invalid provider name",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "user plan does not allow multiple integrations with the same provider",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/integrations/calendar/{integration_id}": {
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Updates an integration properties.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "calendar"
                ],
                "summary": "Update a given integration.",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Integration ID as saved in the database",
                        "name": "integration_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Integration updated",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "The integration was not found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Executes logic deletion of an integration.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "calendar"
                ],
                "summary": "Delete a given integration.",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Integration ID as saved in the database",
                        "name": "integration_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Integration removed",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/integrations/calendar/{integration_id}/calendars": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get all calendars for a given integration that was previously saved in the database.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "calendar"
                ],
                "summary": "Get all calendars for a given integration.",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Integration ID as saved in the database",
                        "name": "integration_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Max results per page",
                        "name": "limit",
                        "in": "query"
                    },
                    {
                        "type": "boolean",
                        "description": "if we should get the selected or not calendars, or all calendars, in case of omission",
                        "name": "selected",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Token for next page. Used in pagination when the number of results exceed 'limit'",
                        "name": "page_token",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Calendars successfully retrieved",
                        "schema": {
                            "$ref": "#/definitions/handlercalendar.CalendarsResponse"
                        }
                    },
                    "403": {
                        "description": "you do not have access to the integration",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/integrations/calendar/{integration_id}/calendars/update": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "This endpoint uses the passed integration to get a provider and update all the calendars from that",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "calendar"
                ],
                "summary": "Updates calendar data according to provider API.",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Integration ID as saved in the database",
                        "name": "integration_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Calendars successfully retrieved",
                        "schema": {
                            "$ref": "#/definitions/handlercalendar.FetchedCalendarsResponse"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003einvalid integration_id value\u003c/li\u003e\u003cli\u003eerror fetching data from the provider\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003einvalid calendar provider\u003c/li\u003e\u003cli\u003ecalendar integration does not exist\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/integrations/calendar/{integration_id}/calendars/{calendar_id}": {
            "patch": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "This endpoint is used to set updatable fields of a calendar like selected field.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "calendar"
                ],
                "summary": "Sets whether a calendar is or not selected by the user.",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Integration ID as saved in the database",
                        "name": "integration_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Calendar ID as saved in the database",
                        "name": "calendar_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Calendar fields to be updated",
                        "name": "payload",
                        "in": "body",
                        "schema": {
                            "$ref": "#/definitions/handlercalendar.PatchCalendar"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Calendars successfully updated",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Calendar"
                            }
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eJSON is not valid\u003c/li\u003e\u003cli\u003ejson: unknown field\u003c/li\u003e\u003cli\u003eID is an invalid value for calendar_id\u003c/li\u003e\u003cli\u003eID is an invalid value for integration_id\u003c/li\u003e\u003cli\u003einvalid json: Default Task needs workspace_id, project_id and task_id\u003c/li\u003e\u003cli\u003einvalid json: Default Project needs workspace_id and project_id\u003c/li\u003e\u003cli\u003einvalid json: cannot set a Default Workspace\u003c/li\u003e\u003cli\u003ethe payload should not be empty\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "you do not have a calendar with the given ID",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/integrations/calendar/{integration_id}/calendars/{calendar_id}/events/{event_id}/attendees": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get all attendees associated with a given calendar event.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "calendar"
                ],
                "summary": "Get all attendees for a given calendar event.",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Integration ID as saved in the database",
                        "name": "integration_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Calendar ID as saved in the database",
                        "name": "calendar_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Event ID as saved in the database",
                        "name": "event_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Event attendees successfully retrieved",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/handlercalendar.EventAttendee"
                            }
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eintegration_id should be a positive value\u003c/li\u003e\u003cli\u003ecalendar_id should be a positive value\u003c/li\u003e\u003cli\u003eevent_id should be a positive value\u003c/li\u003e\u003cli\u003eerror fetching data from the provider\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "401": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003ecalendar access has been expired or revoked\u003c/li\u003e\u003cli\u003euser account may have been deleted at the provider\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "you do not have access to the integration",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003einvalid calendar provider\u003c/li\u003e\u003cli\u003ecalendar integration does not exist\u003c/li\u003e\u003cli\u003ecalendar with ID: {calendar_id} for user {user_id} not found\u003c/li\u003e\u003cli\u003ecalendar may have been deleted at the provider or user don't have access to it\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/integrations/calendar/{integration_id}/calendars/{id_calendar}/events": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get all events for a given calendar in a given integration.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "calendar"
                ],
                "summary": "(DEPRECATED) Get all events for a given calendar in a given integration.",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Integration ID as saved in the database",
                        "name": "integration_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Calendar ID as returned by the provider, it may be an e-mail address, for instance",
                        "name": "id_calendar",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Smallest boundary date to search for calendar events",
                        "name": "start_date",
                        "in": "query",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Biggest boundary date to search for calendar events",
                        "name": "end_date",
                        "in": "query",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Max results per page",
                        "name": "limit",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Token for next page. Used in pagination when the number of results exceed 'limit'",
                        "name": "page_token",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Events successfully retrieved",
                        "schema": {
                            "$ref": "#/definitions/handlercalendar.EventsResponse"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eintegration_id should be a positive value\u003c/li\u003e\u003cli\u003ecalendar_id should be a positive value\u003c/li\u003e\u003cli\u003estart_date has invalid format\u003c/li\u003e\u003cli\u003eend_date has invalid format\u003c/li\u003e\u003cli\u003estart_date is not before end_data\u003c/li\u003e\u003cli\u003eerror fetching data from the provider\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "401": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003ecalendar access has been expired or revoked\u003c/li\u003e\u003cli\u003euser account may have been deleted at the provider\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "you do not have access to the integration",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003einvalid calendar provider\u003c/li\u003e\u003cli\u003ecalendar integration does not exist\u003c/li\u003e\u003cli\u003ecalendar with ID: {calendar_id} for user {user_id} not found\u003c/li\u003e\u003cli\u003ecalendar may have been deleted at the provider or user don't have access to it\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/invitations/{invitation_code}": {
            "get": {
                "description": "Returns an invitation data by code.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "invitations"
                ],
                "summary": "Get an invitation",
                "operationId": "get-invitations",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Invitation code",
                        "name": "invitation_code",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "$ref": "#/definitions/models.SSOInvitation"
                        }
                    },
                    "404": {
                        "description": "Invitation not found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/keys": {
            "get": {
                "description": "Returns the current JWKS keyset used to sign JWT tokens.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "keys"
                ],
                "summary": "get keys",
                "operationId": "get-keys",
                "responses": {
                    "200": {
                        "description": "JWKS keyset",
                        "schema": {}
                    },
                    "500": {
                        "description": "We're sorry, but something went terribly wrong. We have been notified about the error. Please try again later.",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns details for the current user.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "Me",
                "operationId": "get-me",
                "parameters": [
                    {
                        "type": "boolean",
                        "description": "Retrieve user related data (clients, projects, tasks, tags, workspaces, time entries, etc.)",
                        "name": "with_related_data",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/related.UserWithRelated"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "could not load user data",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Updates details for the current user.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json",
                    "text/plain"
                ],
                "tags": [
                    "me"
                ],
                "summary": "Me",
                "operationId": "put-me",
                "parameters": [
                    {
                        "description": "Update user parameters",
                        "name": "payload",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/me.payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.TogglUser"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eCurrent password is not valid\u003c/li\u003e\u003cli\u003eCurrent password must be present to change password\u003c/li\u003e\u003cli\u003eInvalid beginning_of_week\u003c/li\u003e\u003cli\u003eInvalid country_id\u003c/li\u003e\u003cli\u003eInvalid default_workspace_id\u003c/li\u003e\u003cli\u003eInvalid email\u003c/li\u003e\u003cli\u003eInvalid fullname\u003c/li\u003e\u003cli\u003eInvalid timezone\u003c/li\u003e\u003cli\u003ePassword should be at least 6 characters\u003c/li\u003e\u003cli\u003euser with this email already exists\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/accept_tos": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Accepts the last version of the Terms of Service for the current user.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "AcceptTOS",
                "operationId": "post-me-accept-tos",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/clients": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get Clients.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "Clients",
                "operationId": "get-clients",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Retrieve clients created/modified/deleted since this date using UNIX timestamp.",
                        "name": "since",
                        "in": "formData"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Client"
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/close_account": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Close Account",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "CloseAccount",
                "operationId": "post-close-account",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/disable_product_emails/{disable_code}": {
            "post": {
                "description": "Disable product emails.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "Disable product emails",
                "operationId": "post-me-disable-product-emails",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Disable Code",
                        "name": "disable_code",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/disable_weekly_report/{weekly_report_code}": {
            "post": {
                "description": "Disable weekly report.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "Disable weekly report",
                "operationId": "post-me-disable-weekly-report",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Weekly report code",
                        "name": "weekly_report_code",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/enable_sso": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Confirm SSO enabling in existing Toggl account after successful SSO",
                "tags": [
                    "authentication"
                ],
                "summary": "Confirm SSO enabling for user account",
                "operationId": "post-enable-sso",
                "parameters": [
                    {
                        "description": "SSO enabling confirmation data",
                        "name": "enable_sso_post",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/sso.Confirmation"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003einvalid or expired confirmation code\u003c/li\u003e\u003cli\u003euser email doesn't match SSO credentials\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/export": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "List of objects to be downloaded for an user",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "exports"
                ],
                "summary": "Get a list of objects to be downloaded",
                "operationId": "get-me-export",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.DownloadRequestRecord"
                            }
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "An object which data to be downloaded for an user",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "exports"
                ],
                "summary": "Post an object which data to be downloaded",
                "operationId": "post-me-export",
                "parameters": [
                    {
                        "description": "Objects to export",
                        "name": "data_export_object",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/export.payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eCannot start another export until current one is complete\u003c/li\u003e\u003cli\u003eYou must select at least one object to export\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/export/data/{uuid}.zip": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get a zip file List of download requests from an user.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "exports"
                ],
                "summary": "Get the zip file with download requests",
                "operationId": "get-me-export-data-uuid-zip",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Archive UUID",
                        "name": "uuid",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eUser export data cannot be found or is expired\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/favorites": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Gets all favorites for the requesting user",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "favorites"
                ],
                "summary": "Get a list of favorites",
                "operationId": "get-favorites",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Retrieve favorites created/deleted since this date using UNIX timestamp.",
                        "name": "since",
                        "in": "formData"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of favorites for a given user",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Favorite"
                            }
                        }
                    },
                    "403": {
                        "description": "User has no access to Favorites feature",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "This endpoint allows updating an array of favorites. It follow all the requirements\nand behavior from the [post] (Create Favorite) counterpart.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "favorites"
                ],
                "summary": "Update an array of favorites",
                "operationId": "update-favorite",
                "parameters": [
                    {
                        "type": "boolean",
                        "description": "Should the response contain data for meta entities",
                        "name": "meta",
                        "in": "query"
                    },
                    {
                        "description": "Favorite details",
                        "name": "favorite",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/handlerfavorites.payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Updated favorite",
                        "schema": {
                            "$ref": "#/definitions/models.Favorite"
                        }
                    },
                    "400": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003ethe parameter '{parameter}' is invalid\u003c/li\u003e\u003cli\u003ewe could not parse the provided parameters\u003c/li\u003e\u003cli\u003euser %d has no access to Favorites feature\u003c/li\u003e\u003cli\u003efavorite attributes are not valid: {attributes}\u003c/li\u003e\u003cli\u003efavorite constraints were not met: {constraints}\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003euser {user_id} has no access to Favorites feature\u003c/li\u003e\u003cli\u003euser {user_id} has no access to all resources: {resources}\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "This endpoint allows the creation of a favorite given some parameters. The workspace is required, as well\nas either description or project (no favorite without both will be accepted). The user is also required,\nbut it already goes in the authentication.\nAlso, the user must have access to all resources being referenced in the favorite attributes, and these\nresources should have valid relationships. For instance, if you want a favorite in a given workspace and\nwith some tags, the tags must belong to that workspace. In case of user having no access to an attribute,\na 403 status is returned, if the attributes don't relate correctly between themselves the status\nreturned will be 400.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "favorites"
                ],
                "summary": "Create a favorite",
                "operationId": "create-favorite",
                "parameters": [
                    {
                        "type": "boolean",
                        "description": "Should the response contain data for meta entities",
                        "name": "meta",
                        "in": "query"
                    },
                    {
                        "description": "Favorite details",
                        "name": "favorite",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/handlerfavorites.payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Created favorite with its ID",
                        "schema": {
                            "$ref": "#/definitions/models.Favorite"
                        }
                    },
                    "400": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003ethe parameter '{parameter}' is invalid\u003c/li\u003e\u003cli\u003ewe could not parse the provided parameters\u003c/li\u003e\u003cli\u003euser %d has no access to Favorites feature\u003c/li\u003e\u003cli\u003efavorite attributes are not valid: {attributes}\u003c/li\u003e\u003cli\u003efavorite constraints were not met: {constraints}\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003euser {user_id} has no access to Favorites feature\u003c/li\u003e\u003cli\u003euser {user_id} has no access to all resources: {resources}\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/favorites/suggestions": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "It will create 3 favorites based on past user's TE activity and return them. Suggested favorites will be created only once for a given user, and only if the user has never created a favorite before (either manually or by a previous suggestion request). If there is no past TE data there won't be suggested favorites either.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "favorites"
                ],
                "summary": "Generates and returns a list of suggested favorites.",
                "operationId": "post-favorites-suggestions",
                "responses": {
                    "201": {
                        "description": "List of suggested favorites",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Favorite"
                            }
                        }
                    },
                    "204": {
                        "description": "No suggested favorites",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User {user_id} has no access to Favorites feature",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/favorites/{favorite_id}": {
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Deletes a given favorite logically from database, as well as its tags.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "favorites"
                ],
                "summary": "Deletes a given favorite",
                "operationId": "delete-favorite",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numerical ID of the favorite",
                        "name": "favorite_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Favorite deleted"
                    },
                    "400": {
                        "description": "{favorite_id} given favorite ID is invalid",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003euser {user_id} has no access to Favorites feature\u003c/li\u003e\u003cli\u003euser {user_id} is not the owner of favorite ID {favorite_id}\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/features": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get features.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "Features",
                "operationId": "get-me-features",
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/me.Workspace"
                            }
                        }
                    },
                    "403": {
                        "description": "Operation Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/flags": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns flags for the current user. They will be represented by an object with dynamic string keys, where the value can be of any type.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "Flags",
                "operationId": "get-me-flags",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/user.Flags"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Add flags for the current user. The current limits are 4 flags per request, 128 flags in total. Keys and values can be up to 32 and 64 characters, respectively.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "Flags",
                "operationId": "post-me-flags",
                "parameters": [
                    {
                        "description": "flags",
                        "name": "postFlags",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/user.Flags"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/user.Flags"
                        }
                    },
                    "400": {
                        "description": "No valid data submitted",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/id": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns the local Track user ID for the authenticated user.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "Local user ID",
                "operationId": "get-me-id",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "number"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "could not load user data",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/location": {
            "get": {
                "description": "Returns the client's IP-based location. If no data is present, empty response will be yielded.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "User's last known location",
                "operationId": "get-me-location",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/me.UserLocationResponse"
                        }
                    },
                    "404": {
                        "description": "Country with given ISO code not found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/logged": {
            "get": {
                "description": "Used to check if authentication works.",
                "tags": [
                    "me"
                ],
                "summary": "Logged",
                "responses": {
                    "200": {
                        "description": "OK"
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/organizations": {
            "get": {
                "description": "Get all organizations a given user is part of.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "Organizations that a user is part of",
                "operationId": "get-organizations",
                "responses": {
                    "200": {
                        "description": "Successful operation. It returns an empty array when the user has no access.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.MeOrganization"
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/preferences": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns user preferences and alpha features. The list of alpha features contains a full list of feature codes (every feature that exists in database) and the `enabled` flag specifying if that feature should be enabled or disabled for the user.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "preferences"
                ],
                "summary": "Preferences for the current user",
                "operationId": "get-preferences",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.AllPreferences"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "With this endpoint, preferences can be modified and alpha features can be enabled or disabled.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "preferences"
                ],
                "summary": "Update the preferences for the current user",
                "operationId": "post-preferences",
                "parameters": [
                    {
                        "description": "Preferences",
                        "name": "preferences",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/models.AllPreferences"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e \u003cul\u003e\u003cli\u003eCannot set value for ToSAcceptNeeded\u003c/li\u003e\u003cli\u003eInvalid feature code(s)\u003c/li\u003e\u003cli\u003eMissing data\u003c/li\u003e\u003cli\u003eValue in date_format is invalid\u003c/li\u003e\u003cli\u003eValue in timeofday_format is invalid\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/preferences/{client}": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns user preferences and alpha features. The list of alpha features contains a full list of feature codes (every feature that exists in database) and the `enabled` flag specifying if that feature should be enabled or disabled for the user.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "preferences"
                ],
                "summary": "Preferences for an specific client of the current user",
                "operationId": "get-preferences-client",
                "parameters": [
                    {
                        "enum": [
                            "desktop",
                            "web"
                        ],
                        "type": "string",
                        "description": "Client type",
                        "name": "client",
                        "in": "path"
                    },
                    {
                        "type": "integer",
                        "description": "Retrieve preference modified since this date using UNIX timestamp.",
                        "name": "since",
                        "in": "formData"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.AllPreferences"
                        }
                    },
                    "400": {
                        "description": "Unknown client.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "With this endpoint, preferences can be modified and alpha features can be enabled or disabled.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "preferences"
                ],
                "summary": "Update the preferences for an specific client of the current user",
                "operationId": "post-preferences-client",
                "parameters": [
                    {
                        "enum": [
                            "desktop",
                            "web"
                        ],
                        "type": "string",
                        "description": "Client type",
                        "name": "client",
                        "in": "path"
                    },
                    {
                        "description": "Preferences",
                        "name": "preferences",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/models.AllPreferences"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e \u003cul\u003e\u003cli\u003eCannot set value for ToSAcceptNeeded\u003c/li\u003e\u003cli\u003eInvalid feature code(s)\u003c/li\u003e\u003cli\u003eMissing data\u003c/li\u003e\u003cli\u003eUnknown client\u003c/li\u003e\u003cli\u003eValue in date_format is invalid\u003c/li\u003e\u003cli\u003eValue in timeofday_format is invalid\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/projects": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get projects",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "Projects",
                "operationId": "get-me-projects",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Include archived projects.",
                        "name": "include_archived",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Retrieve projects modified since this date using UNIX timestamp, including deleted ones.",
                        "name": "since",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Project"
                            }
                        }
                    },
                    "400": {
                        "description": "Invalid include_archived",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Operation Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/projects/paginated": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get paginated projects.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "ProjectsPaginated",
                "operationId": "get-me-projects-paginated",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Project ID to resume the next pagination from.",
                        "name": "start_project_id",
                        "in": "formData"
                    },
                    {
                        "type": "integer",
                        "description": "Retrieve projects created/modified/deleted since this date using UNIX timestamp.",
                        "name": "since",
                        "in": "formData"
                    },
                    {
                        "type": "integer",
                        "description": "Number of items per page, default 201.",
                        "name": "per_page",
                        "in": "formData"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Project"
                            }
                        }
                    },
                    "403": {
                        "description": "Operation Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/push_services": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get list of firebase tokens registered for current user.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "PushServices",
                "operationId": "get-push-services",
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        }
                    },
                    "403": {
                        "description": "Operation forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Resource can not be found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Register Firebase token for current user",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "PushServices",
                "operationId": "post-push-services",
                "parameters": [
                    {
                        "description": "FirebaseToken",
                        "name": "post_push_services_subscribe",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/push.postPushServicesSubscribe"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "Field 'fcm_registration_token' is required",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Operation forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Unregister Firebase token for current user",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "PushServices",
                "operationId": "delete-push-services",
                "parameters": [
                    {
                        "description": "FirebaseToken",
                        "name": "delete_push_services_unsubscribe",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/push.deletePushServicesUnsubscribe"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "Field 'fcm_registration_token' is required",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Operation forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/quota": {
            "get": {
                "description": "Returns the API quota for the current user for all the organizations they are part of.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "API quota for the current user",
                "operationId": "get-quota",
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/me.GetQuotaResult"
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/reset_token": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Resets API token for the current user.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "authentication"
                ],
                "summary": "ResetToken",
                "operationId": "post-reset-token",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/tags": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns tags for the current user.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "Tags",
                "operationId": "get-tags",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Retrieve tags modified/deleted since this date using UNIX timestamp.",
                        "name": "since",
                        "in": "formData"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Tag"
                            }
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/tasks": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns tasks from projects in which the user is participating.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "Tasks",
                "operationId": "get-tasks",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Retrieve tasks created/modified/deleted since this date using UNIX timestamp.",
                        "name": "since",
                        "in": "formData"
                    },
                    {
                        "type": "string",
                        "description": "Include tasks marked as done.",
                        "name": "include_not_active",
                        "in": "formData"
                    },
                    {
                        "type": "boolean",
                        "description": "Should the response contain data for meta entities",
                        "name": "meta",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Offset to resume the next pagination from.",
                        "name": "offset",
                        "in": "formData"
                    },
                    {
                        "type": "integer",
                        "description": "Number of items per page, default is all.",
                        "name": "per_page",
                        "in": "formData"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Task"
                            }
                        }
                    },
                    "400": {
                        "description": "Invalid include_not_active",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/time_entries": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Lists latest time entries.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "time_entries"
                ],
                "summary": "TimeEntries",
                "operationId": "get-time-entries",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Get entries modified since this date using UNIX timestamp, including deleted ones.",
                        "name": "since",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Get entries with start time, before given date (YYYY-MM-DD) or with time in RFC3339 format.",
                        "name": "before",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Get entries with start time, from start_date YYYY-MM-DD or with time in RFC3339 format. To be used with end_date.",
                        "name": "start_date",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Get entries with start time, until end_date YYYY-MM-DD or with time in RFC3339 format. To be used with start_date.",
                        "name": "end_date",
                        "in": "query"
                    },
                    {
                        "type": "boolean",
                        "description": "Should the response contain data for meta entities",
                        "name": "meta",
                        "in": "query"
                    },
                    {
                        "type": "boolean",
                        "description": "Include sharing details in the response",
                        "name": "include_sharing",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.TimeEntry"
                            }
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/time_entries/checklist": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Check the needed time entries requirement to offer coupon to user",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "time_entries"
                ],
                "summary": "TimeEntries",
                "operationId": "get-time-entries-checklist",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.TimeEntryChecklist"
                            }
                        }
                    }
                }
            }
        },
        "/me/time_entries/current": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Load running time entry for user ID.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "time_entries"
                ],
                "summary": "Get current time entry",
                "operationId": "get-current-time-entry",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.TimeEntry"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Resource can not be found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/time_entries/{time_entry_id}": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Load time entry by ID that is accessible by the current user.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "time_entries"
                ],
                "summary": "Get a time entry by ID.",
                "operationId": "get-time-entry-by-id",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "TimeEntry ID.",
                        "name": "time_entry_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "boolean",
                        "description": "Should the response contain data for meta entities",
                        "name": "meta",
                        "in": "query"
                    },
                    {
                        "type": "boolean",
                        "description": "Include sharing details in the response",
                        "name": "include_sharing",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.TimeEntry"
                        }
                    },
                    "404": {
                        "description": "Resource can not be found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/time_entries_shared_with": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get the sharing details of the specified time entries in bulk",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "time_entries"
                ],
                "summary": "TimeEntries",
                "operationId": "post-me-time-entries-shared-with",
                "parameters": [
                    {
                        "description": "List of time entries to get the sharing details of.",
                        "name": "request",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/timeentries.BulkGetSharingRequest"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns a list of time entry sharing details.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/timeentries.BulkGetSharingResponse"
                            }
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eInvalid workspace\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/timesheets": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns the timehseets for the current user.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "User's Timesheets",
                "operationId": "get-me-timesheets",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Timesheet"
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/track_reminders": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns a list of track reminders.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "TrackReminders",
                "operationId": "get-me-track-reminders",
                "responses": {
                    "200": {
                        "description": "Returns a list of track reminders.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.TrackReminder"
                            }
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/web-timer": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get web timer.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "me"
                ],
                "summary": "WebTimer",
                "operationId": "get-web-timer",
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Operation Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Resource can not be found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/me/workspaces": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Lists workspaces for given user.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "workspaces",
                    "me"
                ],
                "summary": "Workspaces",
                "operationId": "get-workspaces",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Retrieve workspaces created/modified/deleted since this date using UNIX timestamp, including the dates a workspace member got added, removed or updated in the workspace.",
                        "name": "since",
                        "in": "formData"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/workspace.WithActiveProjectCount"
                            }
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Creates a new organization with a single workspace and assigns current user as the organization owner",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations"
                ],
                "summary": "Creates a new organization",
                "operationId": "post-organization",
                "parameters": [
                    {
                        "description": "Input data for organization.",
                        "name": "post_organizations_request",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/models.PostPayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Organization and workspace IDs",
                        "schema": {
                            "$ref": "#/definitions/organization.PostOrganizationReply"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eInvalid JSON input\u003c/li\u003e\u003cli\u003eField 'name' cannot be empty.\u003c/li\u003e\u003cli\u003eorganization name too long, maximum length is 140\u003c/li\u003e\u003cli\u003eworkspace name must contain non-space characters\u003c/li\u003e\u003cli\u003eworkspace name must be provided\u003c/li\u003e\u003cli\u003eworkspace name must not be longer than 140\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User is not authorized to create an organization",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/invitations/{invitation_code}/accept": {
            "post": {
                "description": "User connected with invitation is marked as joined, email is sent to the inviter.",
                "produces": [
                    "text/plain"
                ],
                "tags": [
                    "organizations",
                    "invitations"
                ],
                "summary": "Accepts invitation",
                "operationId": "post-organization-accept-invitation",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Invitation code",
                        "name": "invitation_code",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Invalid invitation code",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/invitations/{invitation_code}/reject": {
            "post": {
                "description": "User connected with invitation is marked as deleted.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "invitations"
                ],
                "summary": "Rejects invitation",
                "operationId": "post-reject-invitation",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Invitation code",
                        "name": "invitation_code",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Invalid invitation code",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Returns organization name and current pricing plan",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations"
                ],
                "summary": "Organization data",
                "operationId": "get-organization",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "$ref": "#/definitions/models.MeOrganization"
                        }
                    },
                    "404": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eInvalid organization ID\u003c/li\u003e\u003cli\u003eUser not part of organization\u003c/li\u003e\u003c/ul\u003e"
                    }
                }
            },
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Updates an existing organization",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations"
                ],
                "summary": "Updates an existing organization",
                "operationId": "put-organization",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Input data for organization.",
                        "name": "put_organizations_request",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/models.PutPayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eInvalid JSON input\u003c/li\u003e\u003cli\u003eInvalid organization ID\u003c/li\u003e\u003cli\u003eAt least one field is required\u003c/li\u003e\u003cli\u003efield 'name' cannot be empty\u003c/li\u003e\u003cli\u003eorganization name too long, maximum length is 140\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User is not authorized to update the organization",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/groups": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Returns list of groups in organization based on set of url parameters.\nList is sorted by name.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "groups",
                    "organizations"
                ],
                "summary": "List of groups in organization with user and workspace assignments",
                "operationId": "get-organization-groups",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Returns records where name contains this string",
                        "name": "name",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "ID of workspace. Returns groups assigned to this workspace",
                        "name": "workspace",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/group.OrganizationGroupResponse"
                            }
                        }
                    },
                    "400": {
                        "description": "Invalid number ...",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Creates a group in the specified organization",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "groups",
                    "organizations"
                ],
                "summary": "Create group",
                "operationId": "post-organization-group",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Input data for group creation.",
                        "name": "post_group_request",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/group.Payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns the created group data.",
                        "schema": {
                            "$ref": "#/definitions/group.OrganizationGroupResponse"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eInvalid JSON input\u003c/li\u003e\u003cli\u003eGroup name must be present\u003c/li\u003e\u003cli\u003eGroup name too long, maximum length is 200\u003c/li\u003e\u003cli\u003eName has already been taken\u003c/li\u003e\u003cli\u003eUser {user} not exists in the organization {org}\u003c/li\u003e\u003cli\u003eWorkspace {ws} not exists in the organization {org}\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/groups/{group_id}": {
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Edits a group in the specified organization",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations",
                    "groups"
                ],
                "summary": "Edit group",
                "operationId": "put-organization-group",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the group.",
                        "name": "group_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Input data for group modification.",
                        "name": "put_group_request",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/group.Payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns the created group data.",
                        "schema": {
                            "$ref": "#/definitions/group.OrganizationGroupResponse"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eInvalid JSON input\u003c/li\u003e\u003cli\u003eGroup name must be present\u003c/li\u003e\u003cli\u003eGroup name too long, maximum length is 200\u003c/li\u003e\u003cli\u003eName has already been taken\u003c/li\u003e\u003cli\u003eUser {user} not exists in the organization {org}\u003c/li\u003e\u003cli\u003eWorkspace {ws} not exists in the organization {org}\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Invalid group ID.",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Deletes a group from the specified organization",
                "produces": [
                    "text/plain"
                ],
                "tags": [
                    "groups",
                    "organizations",
                    ""
                ],
                "summary": "Deletes group",
                "operationId": "delete-organization-group",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the group.",
                        "name": "group_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Invalid group ID.",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "patch": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Patches a group in the specified organization. Patches are applied individually and each patch is validated separately.\n\nThis endpoint supports only the following operation combinations:\n- Adding users: op=\"add\", path=\"/users\"\n- Removing users: op=\"remove\", path=\"/users\"\n- Adding workspaces: op=\"add\", path=\"/workspaces\"\n- Removing workspaces: op=\"remove\", path=\"/workspaces\"\n\nLimitations:\n- Maximum 100 patches per request\n- Maximum 100 values (user IDs or workspace IDs) per patch operation\n- Scalar fields (e.g., group name) cannot be modified via PATCH; use PUT endpoint instead\n\nRequest body schema: Array of patch objects, where each object contains:\n- op (string): Operation type, must be \"add\" or \"remove\"\n- path (string): Target path, must be \"/users\" or \"/workspaces\"\n- value (array of integers): Array of user IDs or workspace IDs\n\nExample request:\n[\n{\"op\": \"add\", \"path\": \"/users\", \"value\": [123, 456]},\n{\"op\": \"remove\", \"path\": \"/workspaces\", \"value\": [789]}\n]",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations",
                    "groups"
                ],
                "summary": "Patch group",
                "operationId": "patch-organization-group",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the group.",
                        "name": "group_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Array of patch operations. Each operation must have: 'op' (string: \\",
                        "name": "patch_group_request",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/groups.PatchInput"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns the result of the requested operations.",
                        "schema": {
                            "$ref": "#/definitions/groups.PatchOutput"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eInvalid JSON input\u003c/li\u003e\u003cli\u003eUnsupported operation (invalid 'op' or 'path', or unsupported combination)\u003c/li\u003e\u003cli\u003eValue not present, or too many per patch operation (empty 'value' array or more than 100 values)\u003c/li\u003e\u003cli\u003eToo many operations (more than 100 patches in request)\u003c/li\u003e\u003cli\u003eUnknown group at organization\u003c/li\u003e\u003cli\u003eUser {id} not exists in the organization {id}\u003c/li\u003e\u003cli\u003eWorkspace {id} not exists in the organization {id}\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have permission to manage user groups.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Invalid group ID.",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/integrations/slack/request": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Endpoint for requesting Slack integration. Sends an email and notification to all org admins.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "integrations"
                ],
                "summary": "Request Slack integration from org admins",
                "operationId": "post-organization-slack-integration-request",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Request sent to admins",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/invitations": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Creates a new invitation for the user.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "invitations",
                    "organizations"
                ],
                "summary": "Creates a new invitation for the user",
                "operationId": "post-organization-invitation",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Input data for invitation creation",
                        "name": "post_invitation_request",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/invitation.Post"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Created user invitations",
                        "schema": {
                            "$ref": "#/definitions/invitation.Result"
                        }
                    },
                    "400": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003eInvalid JSON input\u003c/li\u003e\u003cli\u003eInvalid organization id\u003c/li\u003e\u003cli\u003eat least one email is required\u003c/li\u003e\u003cli\u003eat least one workspace is required\u003c/li\u003e\u003cli\u003eMissing e-mail\u003c/li\u003e\u003cli\u003eInvalid e-mail: '...'\u003c/li\u003e\u003cli\u003einvalid workspace ID\u003c/li\u003e\u003cli\u003eActive user limit is 5. Upgrade to add more active users\u003c/li\u003e\u003cli\u003eInvitation limit reached (please try again later; or upgrade)\u003c/li\u003e\u003cli\u003eUser with e-mail '...' is already an inactive member of the organization\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/invitations/{invitation_id}/resend": {
            "put": {
                "description": "Resend invitation email to user.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "invitations"
                ],
                "summary": "Resends user their invitation",
                "operationId": "put-invitation",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Organization ID",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Invitation ID",
                        "name": "invitation_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "Organization ID and invitation organization ID mismatch",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Invitation code not found",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/invoices/{invoice_uid}.pdf": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns a Invoice document in PDF form.",
                "produces": [
                    "application/pdf"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "InvoicePdf",
                "operationId": "get-organization-invoice",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Numeric ID or string ID of the invoice.",
                        "name": "invoice_uid",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Invoice document in PDF form.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Not authorized to access invoice",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eInvalid organization id\u003c/li\u003e\u003cli\u003eNo invoice found\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/owner": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns organization owner data.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations"
                ],
                "summary": "Get owner of the organization",
                "operationId": "get-organization-owner",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.OrganizationOwner"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Organization owner not found",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/owner/transfer": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations owner"
                ],
                "summary": "Returns list of organization transfers made in the organization",
                "operationId": "get-ownership-transfers",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "If true, returns only current, not finished transfer",
                        "name": "ongoing",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Transfer"
                            }
                        }
                    },
                    "400": {
                        "description": "'ongoing' parameter can be true or false only",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "description": "Return the ownership transfer for a given organization.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations owner"
                ],
                "summary": "Creates new ownership transfer process",
                "operationId": "post-ownership-transfer",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/models.Transfer"
                        }
                    },
                    "400": {
                        "description": "Cannot load organization.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/owner/transfer/{transfer_id}": {
            "get": {
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations owner"
                ],
                "summary": "Returns single organization transfer in the organization",
                "operationId": "get-ownership-transfer",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the transfer.",
                        "name": "transfer_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/models.Transfer"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Transfer not found in the organization",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/owner/transfer/{transfer_id}/{action}": {
            "post": {
                "description": "Return the ownership transfer for a given organization and emails stakeholders.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations owner"
                ],
                "summary": "Updates transfer process and emails stakeholders",
                "operationId": "post-ownership-transfer-actions",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the transfer.",
                        "name": "transfer_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "enum": [
                            "accept",
                            "decline",
                            "withdraw"
                        ],
                        "type": "string",
                        "description": "Action to update transfer with.",
                        "name": "action",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/models.Transfer"
                        }
                    },
                    "400": {
                        "description": "Cannot load current user data.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Owner not found.",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/payment_records": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns paid invoices",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations"
                ],
                "summary": "OrganizationsPaymentRecords",
                "operationId": "get-organizations-payments-records",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "enum": [
                            true,
                            false
                        ],
                        "type": "boolean",
                        "description": "If 'true', returns unified invoices",
                        "name": "is_unified",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Next cursor for unified subsriptions. Cannot be used without `last_inv`",
                        "name": "cursor",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Last invoice ID from the previous call.",
                        "name": "last_inv",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation when `?is_unified=true`",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.UnifiedSubscriptionInvoiceList"
                            }
                        }
                    },
                    "400": {
                        "description": "Forwards subscription client error message when `?is_unified=true`",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/plans": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns pricing plans for an organization",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations"
                ],
                "summary": "OrganizationsPlans",
                "operationId": "get-organizations-plans",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/billing.PricingStruct"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/plans/{plan_id}": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns pricing plan for an organization identified by plan_id",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations"
                ],
                "summary": "OrganizationsPlan",
                "operationId": "get-organizations-plan",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the plan",
                        "name": "plan_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/billing.PricingStruct"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/roles": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Returns a list of organization specific and global roles.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations"
                ],
                "summary": "Organization roles.",
                "operationId": "get-organization-roles",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/types.Role"
                            }
                        }
                    },
                    "403": {
                        "description": "User does not have access to the organization",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Server error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/segmentation": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Returns organization segmentation information",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations"
                ],
                "summary": "Organization segmentation data",
                "operationId": "get-organization-segmentation",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "$ref": "#/definitions/models.OrganizationSegmentation"
                        }
                    },
                    "204": {
                        "description": "Organization without segmentation information.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eUser not part of organization\u003c/li\u003e\u003c/ul\u003e"
                    }
                }
            },
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Save organization segmentation information",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations"
                ],
                "summary": "Organization segmentation data",
                "operationId": "put-organization-segmentation",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "$ref": "#/definitions/models.OrganizationSegmentation"
                        }
                    },
                    "404": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eUser not part of organization\u003c/li\u003e\u003c/ul\u003e"
                    }
                }
            }
        },
        "/organizations/{organization_id}/subscription": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns subscription data.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "Subscription",
                "operationId": "get-organization-subscription",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns subscription data.",
                        "schema": {
                            "$ref": "#/definitions/subscription.OutData"
                        }
                    },
                    "403": {
                        "description": "'Admin permissions required.' if user is not part of the organization.",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Allows to update existing unified subscription for an organization.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "Subscription",
                "operationId": "put-organization-subscription",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Input data for updating subscription.",
                        "name": "organization_subscription_request",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/subscription.updateUnifiedSubsRequest"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Subscription updated"
                    },
                    "400": {
                        "description": "pricing_plan_tag is a required field",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Allows to create a new unified subscription for an organization.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "Subscription",
                "operationId": "post-organization-subscription",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Input data for subscription creation.",
                        "name": "organization_subscription_request",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/subscription.createUnifiedSubsRequest"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Subscription created"
                    },
                    "400": {
                        "description": "pricing_plan_tag is a required field",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Cancels an existing subscription.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "Subscription",
                "operationId": "delete-organization-subscription",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "If true, the subscription is canceled immediately otherwise canceled at period end",
                        "name": "immediateCancel",
                        "in": "query",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003esubscription not found\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/subscription/cancellation_feedback": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Allows to create a cancellation feedback for an organization subscription.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "Subscription cancellation feedback",
                "operationId": "post-organization-subscription-cancellation-feedback",
                "parameters": [
                    {
                        "description": "Feedback cancellation data",
                        "name": "cancellationPayload",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/subscription.payload"
                        }
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "201": {
                        "description": "Successfully created"
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eJSON is not valid\u003c/li\u003e\u003cli\u003eKey: 'payload.Data' Error:Field validation for 'Data' failed on the 'required' tag\u003c/li\u003e\u003cli\u003eKey: 'payload.Data' Error:Field validation for 'Data' failed on the 'min' tag\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal server error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/subscription/customer": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Retrieve unified customer belonging to the organization.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations/customer"
                ],
                "summary": "Retrieve unified customer",
                "operationId": "get-unified-customer",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/customer.UnifiedCustomerResponse"
                        }
                    },
                    "403": {
                        "description": "Admin permissions required.",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Allows to update unified customer data.\nCustomer name, email, country \u0026 postal code are mandatory fields.\nOptional fields will be cleared if they don't have a value.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations/customer"
                ],
                "summary": "Update unified customer",
                "operationId": "put-unified-customer",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/customer.UnifiedCustomerResponse"
                        }
                    },
                    "403": {
                        "description": "Admin permissions required.\" if user is not an admin.",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Creates unified customer for organization.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations/customer"
                ],
                "summary": "Create unified customer",
                "operationId": "post-unified-customer",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/customer.UnifiedCustomerResponse"
                        }
                    },
                    "403": {
                        "description": "Admin permissions required.\" if user is not an admin.",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/subscription/discount_request": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Endpoint for client's feedback when canceling plan. It triggers an e-mail to support with feedbacks and discount request.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "Discount request",
                "operationId": "post-organization-subscription-discount-request",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Feedback from client when canceling a plan",
                        "name": "responses_submitted",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/subscription.responsesSubmittedPayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns only status code when saved correctly.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "JSON is not valid",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "User is not found",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/subscription/feature_upsell_multi": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Gets feature upsell information for all organizations the user has access to",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations/subscription"
                ],
                "summary": "Get feature upsell for multiple organizations",
                "operationId": "get-feature-upsell-multi",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numerical ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "array",
                                "items": {
                                    "$ref": "#/definitions/feature.UpsellResponse"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Internal server error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/subscription/invoice_summary": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns a summary of the next invoice for an Organization",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "Invoice Summary",
                "operationId": "get-organization-invoice-summary",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Quantity of the subscription",
                        "name": "quantity",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Pricing plan tag",
                        "name": "pricing_plan_tag",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/subscription/payment_failed": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns subscription payment failed details.",
                "produces": [
                    "application/json"
                ],
                "summary": "Subscription Payment Failed",
                "operationId": "get-organization-subscription-payment-failed",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns subscription payment failed details.",
                        "schema": {
                            "$ref": "#/definitions/models.PaymentFailedResponse"
                        }
                    },
                    "403": {
                        "description": "'Admin permissions required.' if user is not part of the organization.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "'Subscription not found.' if subscription is not found.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "'Internal server error.' if an error occurred.",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/subscription/promocode": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Applies the given promotion code to organization's customer\nIf the customer already has the promotion code, then it will be overridden",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations/subscription/promocode"
                ],
                "summary": "Applies the given promotion code to organization's customer",
                "operationId": "post-promotion-code",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Promotion code applied"
                    },
                    "404": {
                        "description": "Not found"
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Removes any discount (promotion code) applied to the organization's customer",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations/subscription/promocode"
                ],
                "summary": "Removes any discount (promotion code) applied to the organization's customer",
                "operationId": "delete-promotion-code",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Promotion code removed"
                    },
                    "404": {
                        "description": "Not found"
                    }
                }
            }
        },
        "/organizations/{organization_id}/subscription/purchase_orders/{purchase_order_uid}.pdf": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns a Purchase Order document in PDF form.",
                "produces": [
                    "application/pdf"
                ],
                "tags": [
                    "organizations"
                ],
                "summary": "PurchaseOrderPdf",
                "operationId": "get-organization-purchase-order-pdf",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Numeric ID or string ID of the purchase order.",
                        "name": "purchase_order_uid",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Purchase order document in PDF form.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003ePurchase order not found\u003c/li\u003e\u003cli\u003eCompany not found\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/subscription/setup_intent": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Create a setup intent for collecting customer's payment method for future payments",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations/subscription/setup_intent"
                ],
                "summary": "Create a setup intent for collecting customer's payment method",
                "operationId": "create-setup-intent",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Setup intent created"
                    },
                    "404": {
                        "description": "Not found"
                    }
                }
            }
        },
        "/organizations/{organization_id}/subscription/trial": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Allows to create a new unified subscription on initial 30-day trial for an organization.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "Subscription",
                "operationId": "post-organization-subscription-create-trial",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Subscription created"
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal server error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Cancels an active trial.",
                "produces": [
                    "text/plain"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "Subscription",
                "operationId": "delete-organization-trial",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003etrial not found\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/subscription/trial/opt-in": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns whether the organization is eligible for an opt-in trial.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "Check opt-in trial eligibility",
                "operationId": "get-organization-subscription-trial-opt-in-eligibility",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Eligibility status",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "boolean"
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal server error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Starts a new opt-in trial for the organization if eligible.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "Start opt-in trial",
                "operationId": "post-organization-subscription-trial-opt-in",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization.",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Trial started"
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "409": {
                        "description": "Organization not eligible",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal server error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/subscription/upgrade_request/{feature_id}": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Endpoint for triggering a call to action on admins for upgrading their subscription.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "Upgrade request for a feature",
                "operationId": "post-organization-subscription-upgrade-request",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the feature",
                        "name": "feature_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "CTA notifications sent",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/subscription/usage_based_discount": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Endpoint for applying a usage based discount given a variant of the discount",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "subscription"
                ],
                "operationId": "post-organization-subscription-usage-based-discount",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "String specification of the discount variant to apply",
                        "name": "variant",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Discount applied",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "Bad discount variant",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Organization not found",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Endpoint for removing a usage based discount given to organization",
                "produces": [
                    "text/plain"
                ],
                "tags": [
                    "subscription"
                ],
                "operationId": "delete-organization-subscription-usage-based-discount",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Discount removed",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Organization or usage-based discount not found",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/usage": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Returns organization usage details",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations"
                ],
                "summary": "Organization usage",
                "operationId": "get-organization-usage",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/organization.UsageCounter"
                            }
                        }
                    },
                    "404": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eInvalid organization ID\u003c/li\u003e\u003cli\u003eUser not part of organization\u003c/li\u003e\u003c/ul\u003e"
                    }
                }
            }
        },
        "/organizations/{organization_id}/users": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Returns list of users in organization based on set of url parameters:\nResult is paginated. Pagination params are returned in headers",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations",
                    "users"
                ],
                "summary": "List of users in organization",
                "operationId": "get-organization-users",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Returns records where name or email contains this string",
                        "name": "filter",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "List of `active` `inactive` `invited` comma separated(if not present, all statuses)",
                        "name": "active_status",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "If true returns admins only",
                        "name": "only_admins",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Comma-separated list of groups ids, returns users belonging to these groups only",
                        "name": "groups",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Comma-separated list of workspaces ids, returns users belonging to this workspaces only",
                        "name": "workspaces",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Page number, default 1",
                        "name": "page",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Number of items per page, default 50",
                        "name": "per_page",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Values 'asc' or 'desc', result is sorted on 'names' column, default 'asc'",
                        "name": "sort_dir",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.OrgUser"
                            }
                        },
                        "headers": {
                            "X-Page": {
                                "type": "integer",
                                "description": "current page"
                            },
                            "X-Page-Size": {
                                "type": "integer",
                                "description": "number of records on page (the same as in request or default)"
                            },
                            "X-Pages": {
                                "type": "integer",
                                "description": "number of all pages in result"
                            },
                            "X-Records": {
                                "type": "integer",
                                "description": "number of all records in result"
                            },
                            "X-Sort-Order": {
                                "type": "string",
                                "description": "asc or desc (the same as in request or default)"
                            }
                        }
                    },
                    "400": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003eMissing or invalid organization_id.\u003c/li\u003e\u003cli\u003eactive_status parameter can contain only 'active', 'inactive' or 'invited'.\u003c/li\u003e\u003cli\u003eonly_admins parameter can contain only 'true' or 'false'.\u003c/li\u003e\u003cli\u003eInvalid value sent for 'page'.\u003c/li\u003e\u003cli\u003epage parameter must contain values \u003e 0.\u003c/li\u003e\u003cli\u003eInvalid value sent for 'per_page'.\u003c/li\u003e\u003cli\u003eper_page parameter must contain values \u003e 0.\u003c/li\u003e\u003cli\u003esort_dir parameter can contain only 'asc' or 'desc'.\u003c/li\u003e\u003cli\u003eInvalid value sent for 'groups'.\u003c/li\u003e\u003cli\u003eInvalid value sent for 'workspaces'.\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User is not authorized to list the organization users",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "patch": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Apply changes in bulk to users in an organization (currently deletion only).",
                "produces": [
                    "text/plain"
                ],
                "tags": [
                    "organizations",
                    "users"
                ],
                "summary": "Apply changes in bulk to users in an organization",
                "operationId": "patch-organization-users",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Input data of the users to be patched.",
                        "name": "params",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/user.PatchParams"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003eMissing or invalid organization_id\u003c/li\u003e\u003cli\u003eAt least one organization user ID must be supplied.\u003c/li\u003e\u003cli\u003eOrganization user IDs must be unique.\u003c/li\u003e\u003cli\u003eThe following organization user IDs do not belong to this organization: '...'.\u003c/li\u003e\u003cli\u003eCannot remove the paying user with organization user ID='...'.\u003c/li\u003e\u003cli\u003eCannot remove the organization owner user with organization user ID='...'.\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User is not authorized to delete the organization user",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/users/detailed": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Returns list of users in organization based on set of url parameters:\nResult is paginated. Pagination params are returned in headers",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations",
                    "users"
                ],
                "summary": "List of users in organization with details",
                "operationId": "get-organization-users-detailed",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Returns records where name or email contains this string",
                        "name": "filter",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "List of `active` `inactive` `invited` comma separated(if not present, all statuses)",
                        "name": "active_status",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "If true returns admins only",
                        "name": "only_admins",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Comma-separated list of groups ids, returns users belonging to these groups only",
                        "name": "groups",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Comma-separated list of workspaces ids, returns users belonging to this workspaces only",
                        "name": "workspaces",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Page number, default 1",
                        "name": "page",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Number of items per page, default 50",
                        "name": "per_page",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Values 'asc' or 'desc', result is sorted on 'names' column, default 'asc'",
                        "name": "sort_dir",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.OrgUser"
                            }
                        },
                        "headers": {
                            "X-Page": {
                                "type": "integer",
                                "description": "current page"
                            },
                            "X-Page-Size": {
                                "type": "integer",
                                "description": "number of records on page (the same as in request or default)"
                            },
                            "X-Pages": {
                                "type": "integer",
                                "description": "number of all pages in result"
                            },
                            "X-Records": {
                                "type": "integer",
                                "description": "number of all records in result"
                            },
                            "X-Sort-Order": {
                                "type": "string",
                                "description": "asc or desc (the same as in request or default)"
                            }
                        }
                    },
                    "400": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003eMissing or invalid organization_id.\u003c/li\u003e\u003cli\u003eactive_status parameter can contain only 'active', 'inactive' or 'invited'.\u003c/li\u003e\u003cli\u003eonly_admins parameter can contain only 'true' or 'false'.\u003c/li\u003e\u003cli\u003eInvalid value sent for 'page'.\u003c/li\u003e\u003cli\u003epage parameter must contain values \u003e 0.\u003c/li\u003e\u003cli\u003eInvalid value sent for 'per_page'.\u003c/li\u003e\u003cli\u003eper_page parameter must contain values \u003e 0.\u003c/li\u003e\u003cli\u003esort_dir parameter can contain only 'asc' or 'desc'.\u003c/li\u003e\u003cli\u003eInvalid value sent for 'groups'.\u003c/li\u003e\u003cli\u003eInvalid value sent for 'workspaces'.\u003c/li\u003e\u003cli\u003euser cannot access specified workspace id.\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Forbidden"
                    }
                }
            }
        },
        "/organizations/{organization_id}/users/leave": {
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Leaves organization, effectively delete user account in org and delete organization if it is last user",
                "produces": [
                    "text/plain"
                ],
                "tags": [
                    "users",
                    "organizations"
                ],
                "summary": "Leaves organization",
                "operationId": "delete-organization-users-leave",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003eThe user does not belong to the organization.\u003c/li\u003e\u003cli\u003eCannot remove the paying user.\u003c/li\u003e\u003cli\u003eCannot remove the organization owner.\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/users/{organization_user_id}": {
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Changes a single organization-user. Can affect the following values:",
                "produces": [
                    "text/plain"
                ],
                "tags": [
                    "organizations",
                    "users"
                ],
                "summary": "Changes a single organization-user",
                "operationId": "put-organization-users",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization user",
                        "name": "organization_user_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Input data of the organization user to be changed.",
                        "name": "params",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/github_com_toggl_toggl_api_internal_services_organization_user.Payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003eMissing or invalid organization_id.\u003c/li\u003e\u003cli\u003eInvalid role_id.\u003c/li\u003e\u003cli\u003eCannot use both admin flags and role_id.\u003c/li\u003e\u003cli\u003eUser does not exist in the organization.\u003c/li\u003e\u003cli\u003eAt least one field is required.\u003c/li\u003e\u003cli\u003eField 'name' cannot be empty.\u003c/li\u003e\u003cli\u003eMissing e-mail.\u003c/li\u003e\u003cli\u003eInvalid e-mail: '...'\u003c/li\u003e\u003cli\u003eEmail already exists.\u003c/li\u003e\u003cli\u003eGroup '...' is not in Organization '...'.\u003c/li\u003e\u003cli\u003eWorkspace '...' is not in Organization '...'.\u003c/li\u003e\u003cli\u003eCannot remove admin privileges from owner.\u003c/li\u003e\u003cli\u003eCannot deactivate owner.\u003c/li\u003e\u003cli\u003eCannot remove admin privileges from paying user.\u003c/li\u003e\u003cli\u003eCannot deactivate paying user.\u003c/li\u003e\u003cli\u003eUser has multiple organizations.\u003c/li\u003e\u003cli\u003eInvalid organization role.\u003c/li\u003e\u003cli\u003eInvalid role ID: 1234.\u003c/li\u003e\u003cli\u003eInvalid workspace role with ID: 1234.\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User is not authorized to update the organization user",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003eInvalid organization user ID.\u003c/li\u003e\u003cli\u003eFailed to load user data.\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/workspaces": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Create a workspace within an existing organization.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "workspaces",
                    "organizations"
                ],
                "summary": "Create a new workspace.",
                "operationId": "post-organization-workspaces",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Parameters of the new workspace",
                        "name": "post",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/workspace.Payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Workspace"
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eJSON is not valid\u003c/li\u003e\u003cli\u003eworkspace name must contain non-space characters\u003c/li\u003e\u003cli\u003eworkspace name must not be nil\u003c/li\u003e\u003cli\u003eworkspace name must not be longer than 140\u003c/li\u003e\u003cli\u003eanother workspace with same name exists in organization\u003c/li\u003e\u003cli\u003euser can have a maximum of 100 workspaces\u003c/li\u003e\u003cli\u003eMultiple workspaces are not enabled in this organization.\u003c/li\u003e\u003cli\u003eOrganization {name} can have a maximum of {amount} workspaces\u003c/li\u003e\u003cli\u003eUser with id {id} does not exist.\u003c/li\u003e\u003cli\u003eUser {userID} not exists in the workspace.\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eMust be a premium user to use default_hourly_rate\u003c/li\u003e\u003cli\u003erestricting tag management to administrators requires a premium subscription\u003c/li\u003e\u003cli\u003eMust be a premium user to use default_currency\u003c/li\u003e\u003cli\u003eMust be a premium user to use rounding_minutes\u003c/li\u003e\u003cli\u003eMust be a premium user to use projects_billable_by_default\u003c/li\u003e\u003cli\u003eMust be a premium user to use rounding\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eOrganization not found/accessible\u003c/li\u003e\u003cli\u003eWorkspace not found/accessible\u003c/li\u003e\u003cli\u003eorganization owner not found\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/workspaces/statistics": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Returns map indexed by workspace ID where each map element contains workspace admins list,\nmembers count and groups count.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "organizations",
                    "workspaces"
                ],
                "summary": "Statistics for all workspaces in the organization",
                "operationId": "get-organization-workspaces-statistics",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "$ref": "#/definitions/models.Statistics"
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Resource can not be found",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/workspaces/{workspace_id}/groups": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Returns list of groups in a workspace based on set of url parameters.\nList is sorted by name.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "groups",
                    "workspaces",
                    "organizations"
                ],
                "summary": "List of groups in a workspace within an organization with user assignments.",
                "operationId": "get-organization-workspaces-groups",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace within the organization",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/group.OrganizationGroupResponse"
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Resource can not be found",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/organizations/{organization_id}/workspaces/{workspace_id}/workspace_users": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Returns any users who belong to the workspace directly or through at least one group.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "workspaces",
                    "users"
                ],
                "summary": "List of users who belong to the given workspace.",
                "operationId": "get-organization-workspaces-workspaceusers",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace within the organization",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Workspace user name to filter by",
                        "name": "name",
                        "in": "formData",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Workspace filter by name or email",
                        "name": "search",
                        "in": "formData",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Page number",
                        "name": "page",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Number of items per page",
                        "name": "per_page",
                        "in": "query"
                    },
                    {
                        "type": "boolean",
                        "description": "Returns only users with or without a custom hourly rate respectively",
                        "name": "custom_rates",
                        "in": "query"
                    },
                    {
                        "type": "boolean",
                        "description": "Returns only active users",
                        "name": "active",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.WorkspaceUser"
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Resource can not be found",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "patch": {
                "security": [
                    {
                        "BasicAuth": []
                    },
                    {
                        "OAuth2": []
                    }
                ],
                "description": "Changes the users in a workspace (currently deletion only).",
                "produces": [
                    "text/plain"
                ],
                "tags": [
                    "workspaces",
                    "users"
                ],
                "summary": "Changes the users in a workspace.",
                "operationId": "patch-organization-workspace-users",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the organization",
                        "name": "organization_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Input data of the users to be patched.",
                        "name": "params",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/workspace_users.PatchParams"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eJSON is not valid\u003c/li\u003e\u003cli\u003eAt least one workspace user ID must be supplied.\u003c/li\u003e\u003cli\u003eWorkspace user IDs must be unique\"\u003c/li\u003e\u003cli\u003eWrong workspace user IDs\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/smail/contact": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Send an email to a contact",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "smail"
                ],
                "summary": "Send an email to a contact",
                "operationId": "post-smail-contact",
                "parameters": [
                    {
                        "description": "Email informations",
                        "name": "email_info",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/smail.ContactPayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eEmail is required\u003c/li\u003e\u003cli\u003eName is required\u003c/li\u003e\u003cli\u003eMessage is required\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/smail/demo": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Send an email for a demo",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "smail"
                ],
                "summary": "Send an email for a demo",
                "operationId": "post-smail-demo",
                "parameters": [
                    {
                        "description": "Email informations",
                        "name": "email_info",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/smail.DemoPayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eEmail is required\u003c/li\u003e\u003cli\u003eEmail is too long\u003c/li\u003e\u003cli\u003ePhone is required\u003c/li\u003e\u003cli\u003ePhone is too long\u003c/li\u003e\u003cli\u003eTeamSize is required\u003c/li\u003e\u003cli\u003eTeamSize is too long\u003c/li\u003e\u003cli\u003ePurpose is required\u003c/li\u003e\u003cli\u003ePurpose is too long\u003c/li\u003e\u003cli\u003eSource is required\u003c/li\u003e\u003c/ul\u003e\u003cli\u003eSource is too long\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/smail/meet": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Send an email for meet with message and location",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "smail"
                ],
                "summary": "Send an email for meet",
                "operationId": "post-smail-meet",
                "parameters": [
                    {
                        "description": "Email and Location",
                        "name": "email_location",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/smail.MeetPayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eEmail is required\u003c/li\u003e\u003cli\u003eLocation is required\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/status": {
            "get": {
                "description": "Returns API status.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "status"
                ],
                "summary": "Status",
                "operationId": "get-status",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "429": {
                        "description": "Too Many Requests",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/subscriptions/plans": {
            "get": {
                "description": "Get all available plans along with all features available per plan.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "Get all available plans and features.",
                "operationId": "get-all-plans",
                "responses": {
                    "200": {
                        "description": "List of plans with features per plan.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "array",
                                "items": {
                                    "$ref": "#/definitions/models.PlanWithFeatures"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/sync-server/me/goals": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Gets all goals for the requesting user.",
                "produces": [
                    "application/json"
                ],
                "summary": "Get a list of user goals",
                "parameters": [
                    {
                        "type": "boolean",
                        "description": "archived goals",
                        "name": "active",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of goals for a given user",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/handlergoals.APIResponse"
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/timeline": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get timeline events",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "timeline"
                ],
                "summary": "Get timeline events",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Unix timestamp of the start date",
                        "name": "start_date",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Unix timestamp of the end date",
                        "name": "end_date",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.TimelineEvent"
                            }
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eTimeline is not enabled\u003c/li\u003e\u003cli\u003eInvalid 'start_date' value\u003c/li\u003e\u003cli\u003eInvalid 'end_date' value\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal error",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "503": {
                        "description": "Timeline upload is temporarily unavailable",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "description": "Save timeline events and returns timeline settings",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "timeline"
                ],
                "summary": "Save timeline events",
                "parameters": [
                    {
                        "description": "timeline events",
                        "name": "timeline_post",
                        "in": "body",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.TimelineEvent"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/models.TimelineSettings"
                        }
                    },
                    "400": {
                        "description": "Invalid JSON input",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "503": {
                        "description": "Timeline upload is temporarily unavailable",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "description": "Delete all timeline data for the current user",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "timeline"
                ],
                "summary": "Delete all timeline data",
                "responses": {
                    "204": {
                        "description": "Timeline data deleted"
                    },
                    "400": {
                        "description": "Timeline is not enabled",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/timezones": {
            "get": {
                "description": "Returns known timezones.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "timezones"
                ],
                "summary": "Timezones",
                "operationId": "get-timezones",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/timezones/offsets": {
            "get": {
                "description": "Returns known timezones with their offsets.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "timezones"
                ],
                "summary": "Offsets",
                "operationId": "get-offsets",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Timezone"
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/plans": {
            "get": {
                "description": "Lists Public subscription plans.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "Public Subscription Plans",
                "operationId": "get-public-subscription-plans",
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/billing.FancyPlan"
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get information of single workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "workspaces"
                ],
                "summary": "Get single workspace",
                "operationId": "get-workspace",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric Workspace ID",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Workspace"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Update a specific workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "workspaces"
                ],
                "summary": "Update workspace",
                "operationId": "put-workspaces",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric Workspace ID",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Workspace parameters",
                        "name": "post",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/workspace.Payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Workspace"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/alerts": {
            "get": {
                "description": "Returns a list of existing alerts",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "alerts"
                ],
                "summary": "Alerts",
                "operationId": "get-alerts",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.AlertWithMeta"
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Handles POST alert requests.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "alerts",
                    "workspaces"
                ],
                "summary": "Alerts",
                "operationId": "post-alerts",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Alert data",
                        "name": "request",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "type": "object",
                            "properties": {
                                "project_id": {
                                    "type": "integer"
                                },
                                "receiver_roles": {
                                    "type": "array",
                                    "items": {
                                        "type": "string"
                                    }
                                },
                                "receiver_users": {
                                    "type": "array",
                                    "items": {
                                        "type": "integer"
                                    }
                                },
                                "source_kind": {
                                    "type": "string"
                                },
                                "threshold_type": {
                                    "type": "string"
                                },
                                "thresholds": {
                                    "type": "array",
                                    "items": {
                                        "type": "integer"
                                    }
                                }
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.AlertWithMeta"
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003einvalid workspace ID\u003c/li\u003e\u003cli\u003esource kind can't be blank\u003c/li\u003e\u003cli\u003eproject can't be blank\u003c/li\u003e\u003cli\u003eproject not supported for this source kind\u003c/li\u003e\u003cli\u003ethreshold type can't be blank\u003c/li\u003e\u003cli\u003ethresholds can't be blank\u003c/li\u003e\u003cli\u003ereceivers can't be blank\u003c/li\u003e\u003cli\u003ealert type out of range\u003c/li\u003e\u003cli\u003ereceiver type out of range\u003c/li\u003e\u003cli\u003ethreshold out of range\u003c/li\u003e\u003cli\u003esource kind out of range\u003c/li\u003e\u003cli\u003ethreshold type out of range\u003c/li\u003e\u003cli\u003ereceiver role out of range\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/alerts/{alert_id}": {
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Handles PUT alert requests.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "alerts"
                ],
                "summary": "Alerts",
                "operationId": "put-alerts",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the alert",
                        "name": "alert_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Alert data",
                        "name": "request",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "type": "object",
                            "properties": {
                                "project_id": {
                                    "type": "integer"
                                },
                                "receiver_roles": {
                                    "type": "array",
                                    "items": {
                                        "type": "string"
                                    }
                                },
                                "receiver_users": {
                                    "type": "array",
                                    "items": {
                                        "type": "integer"
                                    }
                                },
                                "source_kind": {
                                    "type": "string"
                                },
                                "threshold_type": {
                                    "type": "string"
                                },
                                "thresholds": {
                                    "type": "array",
                                    "items": {
                                        "type": "integer"
                                    }
                                }
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.AlertWithMeta"
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003einvalid workspace ID\u003c/li\u003e\u003cli\u003esource kind can't be blank\u003c/li\u003e\u003cli\u003eproject can't be blank\u003c/li\u003e\u003cli\u003eproject not supported for this source kind\u003c/li\u003e\u003cli\u003ethreshold type can't be blank\u003c/li\u003e\u003cli\u003ethresholds can't be blank\u003c/li\u003e\u003cli\u003ereceivers can't be blank\u003c/li\u003e\u003cli\u003ealert type out of range\u003c/li\u003e\u003cli\u003ereceiver type out of range\u003c/li\u003e\u003cli\u003ethreshold out of range\u003c/li\u003e\u003cli\u003esource kind out of range\u003c/li\u003e\u003cli\u003ethreshold type out of range\u003c/li\u003e\u003cli\u003ereceiver role out of range\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Handles DELETE alert requests.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "alerts",
                    "workspaces"
                ],
                "summary": "Alerts",
                "operationId": "delete-alerts",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the alert",
                        "name": "alert_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003einvalid 'alert_id' passed in URL\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Alert not found or not accessible",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/clients": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "List clients from workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "clients"
                ],
                "summary": "List clients",
                "operationId": "get-workspace-clients",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Use 'active' to only list active clients, 'archived' to only list archived clients and 'both' to retrieve active and archived clients. If not provided, only active clients are returned.",
                        "name": "status",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "If provided, allows to filter by client name in a case insensitive manner, returning all the ones that contain the given string.",
                        "name": "name",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Client"
                            }
                        }
                    },
                    "400": {
                        "description": "Client status is invalid",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Create workspace client.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "clients"
                ],
                "summary": "Create client",
                "operationId": "post-workspace-clients",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Client",
                        "name": "posted_client",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/client.Payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.Client"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eClient name maximum length is {max_client_length}\u003c/li\u003e\u003cli\u003eClient name cannot be empty\u003c/li\u003e\u003c/ul\u003e"
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/clients/archive": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Archives workspace clients and related projects. Only for premium workspaces.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "clients"
                ],
                "summary": "Archives one or more clients in bulk",
                "operationId": "archive-clients",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Array of client IDs to archive",
                        "name": "body",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "integer"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Client and project IDs that were archived",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/clients.ArchiveClientsResponse"
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "No client with ID {client_id} was found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/clients/data": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "List clients from workspace by client_ids",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "clients"
                ],
                "summary": "List clients for given client_ids",
                "operationId": "get-workspace-clients-data",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "List of client_ids",
                        "name": "client_ids",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "integer"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Client"
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/clients/delete": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Delete one or more workspace clients.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "clients"
                ],
                "summary": "Delete clients",
                "operationId": "delete-workspace-clients",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Numeric ID of the clients",
                        "name": "body",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "integer"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "No client with ID {client_id} was found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/clients/{client_id}": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Load client from workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "clients"
                ],
                "summary": "Load client from ID",
                "operationId": "get-workspace-client",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the client",
                        "name": "client_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.Client"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "No client with ID {client_id} was found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Update workspace client.\n\nNote: use /workspaces/{workspace_id}/clients/{client_id}/archive to archive the client and /workspaces/{workspace_id}/clients/{client_id}/restore to restore it.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "clients"
                ],
                "summary": "Change client",
                "operationId": "put-workspace-clients",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the client",
                        "name": "client_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Client",
                        "name": "posted_client",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/client.Payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.Client"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eClient name maximum length is {max_client_length}\u003c/li\u003e\u003cli\u003eClient name cannot be empty\u003c/li\u003e\u003c/ul\u003e"
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Client doesn't exist in the workspace.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Delete workspace client.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "clients"
                ],
                "summary": "Delete client",
                "operationId": "delete-workspace-client",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the client",
                        "name": "client_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "number"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "No client with ID {client_id} was found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/clients/{client_id}/archive": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Archives a workspace client and related projects. Only for premium workspaces.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "clients"
                ],
                "summary": "Archives client",
                "operationId": "archive-client",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the client",
                        "name": "client_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Projects that were archived with the client",
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "integer"
                            }
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "No client with ID {client_id} was found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/clients/{client_id}/restore": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Restores client and all related or specified projects from the given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "clients"
                ],
                "summary": "Restores client and related projects.",
                "operationId": "restore-client",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the client",
                        "name": "client_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Specify which projects should be restored with the client",
                        "name": "restore_params",
                        "in": "body",
                        "schema": {
                            "$ref": "#/definitions/project.RestoreParams"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns the restored client",
                        "schema": {
                            "$ref": "#/definitions/models.Client"
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "No client with ID {client_id} was found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/currencies": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get the currencies for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "Get workspace currencies",
                "operationId": "get-workspace-currencies",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/dashboard/all_activity": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Dashboard's main purpose is to give an overview of what users in the workspace are doing and have been doing.\nThe activity object holds the data of 20 latest actions in the workspace or latest activity for every workspace user.\nActivity object has the following properties\n* user_id: user ID\n* project_id: project ID (ID is 0 if time entry doesn't have project connected to it)\n* duration: time entry duration in seconds. If the time entry is currently running, the duration attribute contains a negative value, denoting the start of the time entry in seconds since epoch (Jan 1 1970). The correct duration can be calculated as current_time + duration, where current_time is the current time in seconds since epoch.\n* description: (Description property is not present if time entry description is empty)\n* stop: time entry stop time (ISO 8601 date and time. Stop property is not present when time entry is still running)\n* tid: task id, if applicable",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "dashboard"
                ],
                "summary": "Get last activity for every workspace user",
                "operationId": "get-workspace-all-activities",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Filter activities since this date using UNIX timestamp.",
                        "name": "since",
                        "in": "formData"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/dashboard.allActivities"
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/dashboard/most_active": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Dashboard's main purpose is to give an overview of what users in the workspace are doing and have been doing.\nThe most active user object holds the data of the top 5 users who have tracked the most time during last 7 days.\nMost active user object has the following properties\n* user_id: user ID\n* duration: Sum of time entry durations that have been created during last 7 days.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "dashboard"
                ],
                "summary": "Get most active users",
                "operationId": "get-workspace-most-active",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Filter activities since this date using UNIX timestamp.",
                        "name": "since",
                        "in": "formData"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.MostActiveUser"
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/dashboard/top_activity": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Dashboard's main purpose is to give an overview of what users in the workspace are doing and have been doing.\nReturn objects are same as with the `/workspaces/{workspace_id}/dashboard/all_activity` request.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "dashboard"
                ],
                "summary": "Get top activities",
                "operationId": "get-workspace-top-activity",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Filter activities since this date using UNIX timestamp.",
                        "name": "since",
                        "in": "formData"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/dashboard.allActivities"
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/expenses": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get work expenses.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "work",
                    "workspaces"
                ],
                "summary": "Get work expenses",
                "operationId": "get-expense",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/expenses.Expense"
                            }
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "412": {
                        "description": "Error message from the work API",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/expenses/upload": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Upload a work expense.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "work",
                    "workspaces"
                ],
                "summary": "Upload a work expense",
                "operationId": "post-expense",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "file",
                        "description": "Expense file.",
                        "name": "file",
                        "in": "formData",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "$ref": "#/definitions/expenses.Expense"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "412": {
                        "description": "Error message from the work API",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/exports": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "List of workspace download requests from a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "exports"
                ],
                "summary": "Get a list with the workspace download requests",
                "operationId": "get-workspace-exports",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.DownloadRequestRecord"
                            }
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "List of workspaces downloaded from a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "exports"
                ],
                "summary": "Post a list with the workspace to be downloaded",
                "operationId": "post-workspace-exports",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Objects to export",
                        "name": "tokens_list",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eCannot start another export until current one is complete\u003c/li\u003e\u003cli\u003eYou must select at least one object to export\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/exports/data/{uuid}.zip": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Send a zip file List of workspace download requests from a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "exports"
                ],
                "summary": "Get the zip file with workspace download requests",
                "operationId": "get-workspace-exports-data-uuid-zip",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Archive UUID",
                        "name": "uuid",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eWorkspace export data cannot be found or is expired\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/favorites": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Gets all favorites for the requesting user",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "favorites"
                ],
                "summary": "Get a list of favorites",
                "operationId": "get-workspace-favorites",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Retrieve favorites created/deleted since this date using UNIX timestamp.",
                        "name": "since",
                        "in": "formData"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of favorites for a given user",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Favorite"
                            }
                        }
                    },
                    "403": {
                        "description": "User has no access to Favorites feature",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "This endpoint allows updating an array of favorites. It follow all the requirements\nand behavior from the [post] (Create Favorite) counterpart.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "favorites"
                ],
                "summary": "Update an array of favorites",
                "operationId": "update-workspace-favorite",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "boolean",
                        "description": "Should the response contain data for meta entities",
                        "name": "meta",
                        "in": "query"
                    },
                    {
                        "description": "Favorite details",
                        "name": "favorite",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/favorites.UpdateFavorite"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Updated favorite",
                        "schema": {
                            "$ref": "#/definitions/models.Favorite"
                        }
                    },
                    "400": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003ethe parameter '{parameter}' is invalid\u003c/li\u003e\u003cli\u003ewe could not parse the provided parameters\u003c/li\u003e\u003cli\u003euser %d has no access to Favorites feature\u003c/li\u003e\u003cli\u003efavorite attributes are not valid: {attributes}\u003c/li\u003e\u003cli\u003efavorite constraints were not met: {constraints}\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003euser {user_id} has no access to Favorites feature\u003c/li\u003e\u003cli\u003euser {user_id} has no access to all resources: {resources}\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "This endpoint allows the creation of a favorite.\nAlso, the user must have access to all resources being referenced in the favorite attributes, and these\nresources should have valid relationships. For instance, if you want a favorite in a given workspace and\nwith some tags, the tags must belong to that workspace. In case of user having no access to an attribute,\na 403 status is returned, if the attributes don't relate correctly between themselves the status\nreturned will be 400.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "favorites"
                ],
                "summary": "Create a favorite",
                "operationId": "create-workspace-favorite",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "boolean",
                        "description": "Should the response contain data for meta entities",
                        "name": "meta",
                        "in": "query"
                    },
                    {
                        "description": "Favorite details",
                        "name": "favorite",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/favorites.CreateFavorite"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Created favorite with its ID",
                        "schema": {
                            "$ref": "#/definitions/models.Favorite"
                        }
                    },
                    "400": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003ethe parameter '{parameter}' is invalid\u003c/li\u003e\u003cli\u003ewe could not parse the provided parameters\u003c/li\u003e\u003cli\u003euser %d has no access to Favorites feature\u003c/li\u003e\u003cli\u003efavorite attributes are not valid: {attributes}\u003c/li\u003e\u003cli\u003efavorite constraints were not met: {constraints}\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003euser {user_id} has no access to Favorites feature\u003c/li\u003e\u003cli\u003euser {user_id} has no access to all resources: {resources}\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/favorites/suggestions": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "It will create 3 favorites based on past user's TE activity and return them. Suggested favorites will be created only once for a given user, and only if the user has never created a favorite before (either manually or by a previous suggestion request). If there is no past TE data there won't be suggested favorites either.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "favorites"
                ],
                "summary": "Generates and returns a list of suggested favorites.",
                "operationId": "post-workspace-favorites-suggestions",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "201": {
                        "description": "List of suggested favorites",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Favorite"
                            }
                        }
                    },
                    "204": {
                        "description": "No suggested favorites",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User {user_id} has no access to Favorites feature",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/favorites/{favorite_id}": {
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Deletes a given favorite logically from database, as well as its tags.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "favorites"
                ],
                "summary": "Deletes a given favorite",
                "operationId": "workspace-delete-favorite",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the favorite",
                        "name": "favorite_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Favorite deleted"
                    },
                    "400": {
                        "description": "{favorite_id} given favorite ID is invalid",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003euser {user_id} has no access to Favorites feature\u003c/li\u003e\u003cli\u003euser {user_id} is not the owner of favorite ID {favorite_id}\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/goals": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Gets all goals for the requesting user in the workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "goals"
                ],
                "summary": "Get a list of goals",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "boolean",
                        "description": "team goals",
                        "name": "team_goals",
                        "in": "query"
                    },
                    {
                        "type": "boolean",
                        "description": "archived goals",
                        "name": "active",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Page number, default 1.",
                        "name": "page",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Number of items per page, default 20. Also defaults to 100 if provided a value greater than 100.",
                        "name": "per_page",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of goals for a given user",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/handlergoals.APIResponse"
                            }
                        }
                    },
                    "403": {
                        "description": "User has no access to team goals feature",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Create a Goal object with its parameters.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "goals"
                ],
                "summary": "Create a Goal",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Goal details",
                        "name": "goal",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/handlergoals.CreatePayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Created Goal",
                        "schema": {
                            "$ref": "#/definitions/models.Goal"
                        }
                    },
                    "400": {
                        "description": "Some required parameter was not filled, have invalid format or goals limit was reached",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User doesn't belong to given workspace, project or task. It also fails if project or task don't belong to workspace",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/goals/{goal_id}": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Gets a goal that relates to the calling user in the specified workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "goals"
                ],
                "summary": "Get one goal",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Workspace ID",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Goal ID",
                        "name": "goal_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "the asked goal",
                        "schema": {
                            "$ref": "#/definitions/handlergoals.APIResponse"
                        }
                    },
                    "404": {
                        "description": "goal not found for this user",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Update a goal with the updatable parameters given by UpdatePayload",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "goals"
                ],
                "summary": "Update a Goal",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Workspace ID",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Goal ID",
                        "name": "goal_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Goal details",
                        "name": "goal",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/handlergoals.UpdatePayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Updated Goal with the changed field",
                        "schema": {
                            "$ref": "#/definitions/models.Goal"
                        }
                    },
                    "400": {
                        "description": "Goal not found or not accessible by the user",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Delete a goal that was created by the calling user",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "goals"
                ],
                "summary": "Delete one goal",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Workspace ID",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Goal ID",
                        "name": "goal_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Goal deleted"
                    },
                    "400": {
                        "description": "Goal already deleted or was not created by this user",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User doesn't belong to given workspace, project or task. It also fails if project or task don't belong to workspace",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/groups": {
            "get": {
                "description": "Returns a list of groups for the specified workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "groups"
                ],
                "summary": "Get workspace groups",
                "operationId": "get-workspace-groups",
                "deprecated": true,
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace.",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Group"
                            }
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "description": "Creates a group in the specified workspace",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "groups"
                ],
                "summary": "Create group",
                "operationId": "post-workspace-group",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace.",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Input data for group creation.",
                        "name": "post_group_request",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/group.NamePayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns the created group data.",
                        "schema": {
                            "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Group"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eGroup name must be present\u003c/li\u003e\u003cli\u003eGroup name too long, maximum length is 200\u003c/li\u003e\u003cli\u003eName has already been taken\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/groups/{group_id}": {
            "put": {
                "description": "Updates the group.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "groups"
                ],
                "summary": "Update group",
                "operationId": "put-workspace-group",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace.",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the group.",
                        "name": "group_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Input data for group update.",
                        "name": "put_group_request",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/group.NamePayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns the created updated data.",
                        "schema": {
                            "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Group"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eGroup name must be present\u003c/li\u003e\u003cli\u003eGroup name too long, maximum length is 200\u003c/li\u003e\u003cli\u003eName has already been taken\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Group was not found",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "description": "Deletes the group.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "groups"
                ],
                "summary": "Delete group",
                "operationId": "delete-workspace-group",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace.",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the group.",
                        "name": "group_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Group was not found",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/ical/reset": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Reset the iCal token for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "ical"
                ],
                "summary": "Reset iCal token",
                "operationId": "post-workspace-ical-reset",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "Workspace not found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/ical/toggle": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Toggle the iCal token on/off for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "ical"
                ],
                "summary": "Toggle the iCal token",
                "operationId": "post-workspace-ical-toggle",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "Workspace not found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/invoices": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get invoices for given workspace with pagination.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "user-invoices"
                ],
                "summary": "Get workspace invoices.",
                "operationId": "get-workspace-invoices",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Sort order, default ASC.",
                        "name": "sort_order",
                        "in": "formData"
                    },
                    {
                        "type": "integer",
                        "description": "Number of items per page, default 50.",
                        "name": "per_page",
                        "in": "formData"
                    },
                    {
                        "type": "integer",
                        "description": "Page number, default 1.",
                        "name": "page",
                        "in": "formData"
                    },
                    {
                        "type": "string",
                        "description": "Sort field, default created_at.",
                        "name": "sort_field",
                        "in": "formData"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.UserInvoice"
                            }
                        }
                    },
                    "403": {
                        "description": "Operation Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Creates new user invoice.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "user-invoices"
                ],
                "summary": "Create user invoice",
                "operationId": "post-workspace-user-invoice",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Post data",
                        "name": "tag_post",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/models.UserInvoice"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.UserInvoice"
                            }
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eInvalid JSON input\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/invoices/{invoice_id}.pdf": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns an Invoice document in PDF form.",
                "produces": [
                    "application/pdf"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "InvoicePdf",
                "operationId": "get-workspace-invoice",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace.",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the invoice.",
                        "name": "invoice_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Invoice document in PDF form.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eAdmin permissions required\u003c/li\u003e\u003cli\u003eNot authorized to access invoice {invoice_id}\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "No invoice found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/invoices/{user_invoice_id}": {
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Deletes user invoice by ID if exists.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "user-invoices"
                ],
                "summary": "Delete user invoice.",
                "operationId": "delete-workspace-invoice",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "User invoice ID to be deleted",
                        "name": "user_invoice_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Invoice not found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/linked_sso_profiles": {
            "get": {
                "description": "Returns a list of SSO profiles that are linked to the given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "authentication"
                ],
                "summary": "Get linked SSO profiles for a workspace",
                "operationId": "get-workspace-sso",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/client.LinkedSsoProfile"
                            }
                        }
                    },
                    "403": {
                        "description": "\u003cp\u003ePossible message errors:\u003c/p\u003e\u003cul\u003e\u003cli\u003eThe user does not have a Toggl account\u003c/li\u003e\u003cli\u003eThe user is not authorized to manage SSO\u003c/li\u003e\u003c/ul\u003e\"// @Failure\t500 {string} string \"We're sorry, but something went terribly wrong. We have been notified about the error. Please try again later.",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/linked_sso_profiles/{sso_profile_id}": {
            "put": {
                "description": "Link the workspace with the given ID to an SSO profile with the given ID.",
                "tags": [
                    "authentication"
                ],
                "summary": "Link SSO profile to a workspace",
                "operationId": "put-workspace-sso",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the SSO profile",
                        "name": "sso_profile_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/client.LinkedSsoProfile"
                            }
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible message errors:\u003c/p\u003e\u003cul\u003e\u003cli\u003eerror linking sso profile {sso_profile_id} to workspace {workspace_id}: SSO profile not found\u003c/li\u003e\u003cli\u003eerror linking sso profile {sso_profile_id} to workspace {workspace_id}: no access to given profile\u003c/li\u003e\u003cli\u003eerror linking sso profile {sso_profile_id} to workspace {workspace_id}: SSO profile already linked to a workspace\u003c/li\u003e\u003cli\u003eerror linking sso profile {sso_profile_id} to workspace {workspace_id}: SSO profile is not approved\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "\u003cp\u003ePossible message errors:\u003c/p\u003e\u003cul\u003e\u003cli\u003eThe user does not have a Toggl account\u003c/li\u003e\u003cli\u003eThe user is not authorized to manage SSO\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "We're sorry, but something went terribly wrong. We have been notified about the error. Please try again later.",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "description": "Unlink the workspace from an SSO profile.",
                "tags": [
                    "authentication"
                ],
                "summary": "Unlink the workspace from an SSO profile.",
                "operationId": "delete-workspace-linked-sso-profiles",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the SSO profile",
                        "name": "sso_profile_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/client.LinkedSsoProfile"
                            }
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible message errors:\u003c/p\u003e\u003cul\u003e\u003cli\u003eerror linking sso profile {sso_profile_id} to workspace {workspace_id}: SSO profile not found\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "\u003cp\u003ePossible message errors:\u003c/p\u003e\u003cul\u003e\u003cli\u003eThe user does not have a Toggl account\u003c/li\u003e\u003cli\u003eThe user is not authorized to manage SSO\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "We're sorry, but something went terribly wrong. We have been notified about the error. Please try again later.",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/logo": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get the logo for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "workspaces/logo"
                ],
                "summary": "Get workspace logo",
                "operationId": "get-workspace-logo",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.Logo"
                        }
                    },
                    "400": {
                        "description": "Workspace not found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Post the logo for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "workspaces/logo"
                ],
                "summary": "Post workspace logo",
                "operationId": "post-workspace-logo",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.Logo"
                        }
                    },
                    "400": {
                        "description": "Workspace not found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Delete the logo for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "workspaces/logo"
                ],
                "summary": "Delete workspace logo",
                "operationId": "delete-workspace-logo",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.Logo"
                        }
                    },
                    "400": {
                        "description": "Workspace not found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/payment_receipts/{payment_id}.pdf": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns payment receipt pdf file.",
                "produces": [
                    "application/pdf"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "PaymentReceipts",
                "operationId": "get-workspace-payment-receipts",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the receipt",
                        "name": "payment_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns payment receipt pdf file.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003ePayment {payment_id} not found for workspace {workspace_id}\u003c/li\u003e\u003cli\u003eCountry not found for payment {payment_id}\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/preferences": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get the preferences for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "preferences"
                ],
                "summary": "Get workspace preferences",
                "operationId": "get-workspace-preferences",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.Logo"
                        }
                    },
                    "400": {
                        "description": "Workspace not found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Update the preferences for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "preferences"
                ],
                "summary": "Update workspace preferences",
                "operationId": "post-workspace-preferences",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Input data of the preferences.",
                        "name": "preferences",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/models.WorkspacePreferences"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.Logo"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eThe field is not writable\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Workspace needs to have the Locking time entries feature enabled",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Permission required to update time entries lock setting.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/project_groups": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get project groups for given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "groups"
                ],
                "summary": "Get workspace project groups.",
                "operationId": "get-project-groups",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Project IDs separated by comma.",
                        "name": "project_ids",
                        "in": "formData",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.ProjectGroup"
                            }
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Adds group to project for given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "groups"
                ],
                "summary": "Adds group to project.",
                "operationId": "post-project-group",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Input data",
                        "name": "project_group_post",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/group.ProjectGroupPayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/project_groups/{project_group_id}": {
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Remove project group for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "groups"
                ],
                "summary": "Remove project group.",
                "operationId": "delete-project-group",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the project group",
                        "name": "project_group_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/project_users": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "List all projects users for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "Get workspace projects users",
                "operationId": "get-workspace-project-users",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Numeric IDs of projects, comma-separated",
                        "name": "project_ids",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Numeric ID of user, if passed returns only project users for this user's projects",
                        "name": "user_id",
                        "in": "query"
                    },
                    {
                        "type": "boolean",
                        "description": "Include group members",
                        "name": "with_group_members",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.ProjectUser"
                            }
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eproject_ids cannot exceed 200 elements.\u003c/li\u003e\u003cli\u003eInvalid user_id\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Include a project user for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "Add an user into workspace projects users",
                "operationId": "post-workspace-project-users",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Input data of the user.",
                        "name": "project_user",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/user.PostPayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.ProjectUser"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eInvalid project_id\u003c/li\u003e\u003cli\u003eInvalid user_id\u003c/li\u003e\u003cli\u003eProject user already exists\u003cli\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/project_users/paginated": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "List projects users for a given workspace and set of project IDs paginated.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "Get workspace projects users paginated",
                "operationId": "post-workspace-project-users-paginated",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "boolean",
                        "description": "Include inactive users in the response",
                        "name": "show_inactive",
                        "in": "query"
                    },
                    {
                        "description": "Numeric IDs of projects",
                        "name": "project_ids",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "integer"
                            }
                        }
                    },
                    {
                        "type": "string",
                        "description": "Number of users per project",
                        "name": "users_per_project",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Page number",
                        "name": "page",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.ProjectUserWithMeta"
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/project_users/{project_user_ids}": {
            "patch": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Patch a list of project users for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "Patch project users from workspace",
                "operationId": "patch-workspace-project-users-ids",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        },
                        "collectionFormat": "csv",
                        "description": "Numeric IDs of the project users",
                        "name": "project_user_ids",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/user.Output"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eInvalid value as user IDs\u003c/li\u003e\u003cli\u003eNo patchable fields defined\u003c/li\u003e\u003cli\u003ePATCH expects at least one ID\u003c/li\u003e\u003cli\u003ePATCH request is limited to %d entries at once\u003c/li\u003e\u003cli\u003eInvalid op: \u003c/li\u003e\u003cli\u003eInvalid path format: \u003c/li\u003e\u003cli\u003ePath not found: \u003c/li\u003e\u003cli\u003eOperation not supported ({patch_operation} {patch_path})\u003c/li\u003e\u003cli\u003eInvalid path\u003c/li\u003e\u003cli\u003e/manager expects a boolean\u003c/li\u003e\u003cli\u003e/labor_cost expects an float64 or null\u003c/li\u003e\u003cli\u003e/rate expects an float64 or null\u003c/li\u003e\u003cli\u003eOperation not supported (add /labor_cost)\u003c/li\u003e\u003cli\u003eOperation not supported (add /rate)\u003c/li\u003e\u003cli\u003eOperation not supported (add /manager)\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/project_users/{project_user_id}": {
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Update the data for a project user for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "Update an user into workspace projects users",
                "operationId": "put-workspace-project-users",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the project user",
                        "name": "project_user_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Input data of the user.",
                        "name": "project_user",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/user.PutPayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.ProjectUser"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eMissing data\u003c/li\u003e\u003cli\u003eInvalid project_id\u003c/li\u003e\u003cli\u003eInvalid user_id\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Delete a project user for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "Delete a project user from workspace projects users",
                "operationId": "delete-workspace-project-users",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the project user",
                        "name": "project_user_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eProject user not found/accessible\u003c/li\u003e\u003cli\u003eInvalid project_id\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/projects": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get projects for given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "WorkspaceProjects",
                "operationId": "get-projects",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "boolean",
                        "description": "Return active or inactive project. You can pass 'both' to get both active and inactive projects.",
                        "name": "active",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Retrieve projects created/modified/deleted since this date using UNIX timestamp.",
                        "name": "since",
                        "in": "query"
                    },
                    {
                        "type": "boolean",
                        "description": "billable",
                        "name": "billable",
                        "in": "query"
                    },
                    {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        },
                        "collectionFormat": "csv",
                        "description": "user_ids",
                        "name": "user_ids",
                        "in": "query"
                    },
                    {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        },
                        "collectionFormat": "csv",
                        "description": "client_ids",
                        "name": "client_ids",
                        "in": "query"
                    },
                    {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        },
                        "collectionFormat": "csv",
                        "description": "group_ids",
                        "name": "group_ids",
                        "in": "query"
                    },
                    {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        },
                        "collectionFormat": "csv",
                        "description": "Numeric IDs of the projects",
                        "name": "project_ids",
                        "in": "query"
                    },
                    {
                        "type": "array",
                        "items": {
                            "type": "string"
                        },
                        "collectionFormat": "csv",
                        "description": "statuses",
                        "name": "statuses",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "name",
                        "name": "name",
                        "in": "query",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "page",
                        "name": "page",
                        "in": "query",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "sort_field",
                        "name": "sort_field",
                        "in": "query",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "sort_order",
                        "name": "sort_order",
                        "in": "query",
                        "required": true
                    },
                    {
                        "type": "boolean",
                        "description": "only_templates",
                        "name": "only_templates",
                        "in": "query",
                        "required": true
                    },
                    {
                        "type": "boolean",
                        "description": "get only projects assigned to the current user",
                        "name": "only_me",
                        "in": "query"
                    },
                    {
                        "type": "boolean",
                        "description": "get only projects the current user can edit",
                        "name": "only_editable",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Number of items per page, default 151. Cannot exceed 200.",
                        "name": "per_page",
                        "in": "query"
                    },
                    {
                        "type": "boolean",
                        "description": "Place pinned projects at top of response",
                        "name": "sort_pinned",
                        "in": "query",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "search",
                        "name": "search",
                        "in": "query",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Project"
                            }
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Create project for given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "WorkspaceProjects",
                "operationId": "post-workspace-project-create",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Post parameters",
                        "name": "post_input",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/project.Payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Project"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/projects/billable-amounts": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get projects billable amounts",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "Projects",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Project IDs",
                        "name": "post_input",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/projects.Payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Project"
                            }
                        }
                    },
                    "400": {
                        "description": "invalid body",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Operation Forbidden",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/projects/task_count": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Retrieves the task count for the specified projects",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "WorkspaceProjectsTaskCount",
                "operationId": "project-task-count",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Post parameters",
                        "name": "post_input",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/projects.taskCountPayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "object",
                                "additionalProperties": {
                                    "type": "integer"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/projects/templates": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get projects templates for given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "WorkspaceProjectsTemplates",
                "operationId": "get-projects-templates",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/projects/user_count": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Retrieves the user count for the specified projects",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "WorkspaceProjectsUserCount",
                "operationId": "project-user-count",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Post parameters",
                        "name": "post_input",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/projects.userCountPayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "object",
                                "additionalProperties": {
                                    "type": "integer"
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/projects/{project_ids}": {
            "patch": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Bulk editing workspace projects.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "WorkspaceProjects",
                "operationId": "patch-workspace-projects",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Numeric IDs of project ids, separated by comma. E.g.: `204301830,202700150,202687559`",
                        "name": "project_ids",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Array of batch operations",
                        "name": "patch_input",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/project.PatchInput"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/projects.PatchOutput"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/projects/{project_id}": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get project for given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "WorkspaceProject",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the project",
                        "name": "project_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Project"
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eInvalid project_id\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Update project for given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "WorkspaceProject",
                "operationId": "put-workspace-project",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the project",
                        "name": "project_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Post parameters",
                        "name": "post_input",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/project.Payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Project"
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eClient with the ID {client ID} isn't present in workspace {workspace ID}\u003c/li\u003e\u003cli\u003eError in validating color '{color}'. Project color must be a hex value in the form of #[0-9a-f]{6}.\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eOnly admins may create projects in this workspace\u003c/li\u003e\u003cli\u003eOnly admins may create private projects in this workspace\u003c/li\u003e\u003cli\u003eUser does not have access to this resource.\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Delete project for given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "WorkspaceProject",
                "operationId": "delete-workspace-project",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the project",
                        "name": "project_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Time entries deletion mode: 'delete' or 'unassign'",
                        "name": "teDeletionMode",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eInvalid project_id\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/projects/{project_id}/periods": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get recurring project periods for given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "Get Recurring Project Periods",
                "operationId": "get-workspace-project-periods",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the project",
                        "name": "project_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Smallest boundary date to search for recurring periods",
                        "name": "start_date",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Biggest boundary date to search for for recurring periods",
                        "name": "end_date",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.RecurringPeriod"
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eInvalid project_id\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/projects/{project_id}/pin": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Pin or unpin a project to top of user's project list",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "WorkspaceProjects",
                "operationId": "post-pinned-project",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the project",
                        "name": "project_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Post parameters",
                        "name": "post_input",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/projects.pinnedProjectPayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    },
                    "403": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003eCannot pin more projects: Max 100 pins for paid plans\u003c/li\u003e\u003cli\u003eCannot pin more projects: Max 1 pin for free plans\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Project not found/accessible",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/projects/{project_id}/statistics": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get statistics for given workspace and project. For time entry related information, this endpoint does not consider running ones.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "projects"
                ],
                "summary": "WorkspaceProject",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the project",
                        "name": "project_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.ProjectStatistics"
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eInvalid project_id\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/projects/{project_id}/tasks": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get project tasks for given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "tasks"
                ],
                "summary": "WorkspaceProjectTasks",
                "operationId": "get-workspace-project-tasks",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the project",
                        "name": "project_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "boolean",
                        "description": "Return only active tasks. If true, returns only active tasks. If false or omitted, returns all tasks.",
                        "name": "active",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Task"
                            }
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eInvalid project_id\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Post project tasks for given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "tasks"
                ],
                "summary": "WorkspaceProjectTasks",
                "operationId": "post-workspace-project-tasks",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the project",
                        "name": "project_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Post parameters",
                        "name": "post_input",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/task.Payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.Task"
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003e\"Project not found/accessible, Can not change tasks of archived project\"\u003c/li\u003e\u003cli\u003eInvalid project_id\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/projects/{project_id}/tasks/{task_ids}": {
            "patch": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Patch project tasks for given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "tasks"
                ],
                "summary": "WorkspaceProjectTasks",
                "operationId": "patch-workspace-project-tasks",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the project",
                        "name": "project_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Numeric IDs of project tasks separated by comma",
                        "name": "task_ids",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Patch operations",
                        "name": "patch_input",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/task.PatchInput"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/task.PatchOutput"
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eInvalid project_id\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/projects/{project_id}/tasks/{task_id}": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get project task for given task id.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "tasks"
                ],
                "summary": "WorkspaceProjectTask",
                "operationId": "get-workspace-project-task",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the project",
                        "name": "project_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the task",
                        "name": "task_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.Task"
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eInvalid project_id\u003c/li\u003e\u003cli\u003eInvalid task_id\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Put project task for given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "tasks"
                ],
                "summary": "WorkspaceProjectTask",
                "operationId": "put-workspace-project-task",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the project",
                        "name": "project_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Numeric ID of project task",
                        "name": "task_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Put parameters",
                        "name": "patch_input",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/task.Payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.Task"
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eInvalid project_id\u003c/li\u003e\u003cli\u003eInvalid task_id\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Delete projects task for given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "tasks"
                ],
                "summary": "WorkspaceProjectTask",
                "operationId": "delete-workspace-project-task",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the project",
                        "name": "project_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the task",
                        "name": "task_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eInvalid project_id\u003c/li\u003e\u003cli\u003eInvalid task_id\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/rates": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Creates a new rate.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "workspaces"
                ],
                "summary": "Rates creation",
                "operationId": "create-rate",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Rate attributes",
                        "name": "rate_post",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/rates.creationRequest"
                        }
                    }
                ],
                "responses": {
                    "201": {
                        "description": "Successfully created."
                    },
                    "400": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003eRequest payload must be informed\u003c/li\u003e\u003cli\u003eInvalid workspace ID\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Billable rates are available for Starter and higher plans.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User cannot access billable rate(s).",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/rates/{level}/{level_id}": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get rates by level(workspace|project|task|user).",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "workspaces"
                ],
                "summary": "Rates list",
                "operationId": "get-rates-by-level",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Rates level: workspace, project, task or user",
                        "name": "level",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the entity level",
                        "name": "level_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Type of rate values to be returned: `billable_rates` or `labor_costs`. Default is `billable_rates`.",
                        "name": "type",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Rate"
                            }
                        }
                    },
                    "400": {
                        "description": "Possible error messages:\u003cul\u003e\u003cli\u003eInvalid workspace ID\u003c/li\u003e\u003cli\u003eInvalid entity ID\u003c/li\u003e\u003cli\u003eInvalid level: it should be workspace, workspace_user, project or project_user\u003c/li\u003e\u003cli\u003eUser not found in workspace\u003c/li\u003e\u003cli\u003eTask not found in workspace\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Billable rates are available for Starter and higher plans.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User cannot access billable rate(s).",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/reports/shared": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get shared report.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "saved_reports"
                ],
                "summary": "workspace.SharedReport",
                "operationId": "get-shared-report",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace.",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "boolean",
                        "name": "fixed_dates",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "name": "name",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "name": "page",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "name": "per_page",
                        "in": "query"
                    },
                    {
                        "type": "boolean",
                        "name": "public",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "name": "requestingUserID",
                        "in": "query"
                    },
                    {
                        "type": "boolean",
                        "name": "scheduled",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "name": "sort_direction",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "name": "sort_field",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.SavedReport"
                            }
                        }
                    },
                    "400": {
                        "description": "Invalid parameter {parameter_name}.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Available only for premium workspaces.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Workspace not found/accessible.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Change shared report.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "saved_reports"
                ],
                "summary": "workspace.SharedReport",
                "operationId": "put-shared-report",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace.",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Saved Report Payload",
                        "name": "saved_report_payload",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/saved.Payload"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns shared report.",
                        "schema": {
                            "$ref": "#/definitions/models.SavedReport"
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eJSON is not valid\u003c/li\u003e\u003cli\u003eReport ID {report_id} failed with: saved report name field can't be blank\u003c/li\u003e\u003cli\u003eReport ID {report_id} failed with: parameter report_type invalid or blank\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Available only for premium workspaces.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Public reports can be saved only by admins.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eWorkspace not found/accessible.\u003c/li\u003e\u003cli\u003eSome IDs were not found: Only {found_count} Saved Reports found for {requested_count} given IDs.\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Add shared report.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "saved_reports"
                ],
                "summary": "workspace.SharedReport",
                "operationId": "post-shared-report",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace.",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Saved Report Payload",
                        "name": "saved_report_payload",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/saved.Payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns shared report.",
                        "schema": {
                            "$ref": "#/definitions/models.SavedReport"
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eJSON is not valid\u003c/li\u003e\u003cli\u003esaved report name field can't be blank\u003c/li\u003e\u003cli\u003esaved report fixed_daterange can't be blank\u003c/li\u003e\u003cli\u003esaved report public can't be blank\u003c/li\u003e\u003cli\u003eparameter report_type is invalid or blank\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Available only for premium workspaces.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Public reports can be saved only by admins.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Workspace not found/accessible.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/reports/shared/bulk_delete": {
            "patch": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Bulk delete saved reports.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "saved_reports"
                ],
                "summary": "SavedReport",
                "operationId": "bulk-delete-saved-report-resource",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace.",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Input data",
                        "name": "input_data",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/shared.bulkDeleteInputData"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.SavedReport"
                            }
                        }
                    },
                    "400": {
                        "description": "JSON is not valid.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Available only for premium workspaces.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eWorkspace not found/accessible.\u003c/li\u003e\u003cli\u003eSome IDs were not found: Only {found_count} Saved Reports found for {requested_count} given IDs.\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/reports/shared/{report_id}": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get a saved report.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "saved_reports"
                ],
                "summary": "models.SavedReport",
                "operationId": "get-saved-report-resource",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace.",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the report.",
                        "name": "report_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "$ref": "#/definitions/models.SavedReport"
                        }
                    },
                    "402": {
                        "description": "Available only for premium workspaces.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eWorkspace not found/accessible.\u003c/li\u003e\u003cli\u003eReport ID {report_id} not found/accessible.\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Change saved report.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "saved_reports"
                ],
                "summary": "models.SavedReport",
                "operationId": "put-saved-report-resource",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace.",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the report.",
                        "name": "report_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Saved Report Payload",
                        "name": "saved_report_payload",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/saved.Payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns saved report.",
                        "schema": {
                            "$ref": "#/definitions/models.SavedReport"
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eJSON is not valid\u003c/li\u003e\u003cli\u003esaved report name field can't be blank\u003c/li\u003e\u003cli\u003eparameter report_type invalid or blank\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Available only for premium workspaces.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Public reports can be saved only by admins.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Workspace not found/accessible.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Delete saved report.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "saved_reports"
                ],
                "summary": "models.SavedReport",
                "operationId": "delete-saved-report-resource",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace.",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the report.",
                        "name": "report_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.SavedReport"
                        }
                    },
                    "402": {
                        "description": "Available only for premium workspaces.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eWorkspace not found/accessible.\u003c/li\u003e\u003cli\u003eReport ID {report_id} not found/accessible.\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/scheduled_reports": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Lists scheduled reports.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "reports"
                ],
                "summary": "ScheduledReports",
                "operationId": "get-workspace-scheduled-reports",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lists scheduled reports.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.ScheduledReport"
                            }
                        }
                    },
                    "402": {
                        "description": "Workspace needs to have the {feature_name} feature enabled.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Workspace not found/accessible",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Endpoint for setting up a scheduled report.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "reports"
                ],
                "summary": "ScheduledReports",
                "operationId": "post-workspace-scheduled-reports",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Comment from the client on the pricing plan change",
                        "name": "workspace_id",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/scheduled.payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns created schedule report.",
                        "schema": {
                            "$ref": "#/definitions/models.ScheduledReport"
                        }
                    },
                    "400": {
                        "description": "Possible error messages: \u003cul\u003e\u003cli\u003eBookmark not found.\u003c/li\u003e\u003cli\u003eUnable to use all requested recipients.\u003c/li\u003e\u003cli\u003eNo usable recipients found.\u003c/li\u003e\u003cli\u003eInvalid scheduled report frequency. Must be one of: 1 (daily), 7 (weekly) or 30 (monthly).\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Workspace needs to have the {feature_name} feature enabled.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Workspace not found/accessible",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/scheduled_reports/{report_id}": {
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Endpoint for delete a scheduled report.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "reports"
                ],
                "summary": "ScheduledReport",
                "operationId": "delete-workspace-scheduled-reports",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the report",
                        "name": "report_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns only status code.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Workspace needs to have the {feature_name} feature enabled.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Possible error messages: \u003cul\u003e\u003cli\u003eUser does not have access to this resource.\u003c/li\u003e\u003cli\u003eCan't remove the schedule.\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Possible error messages: \u003cul\u003e\u003cli\u003eScheduled report not found.\u003c/li\u003e\u003cli\u003eWorkspace not found/accessible\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/statistics": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns workspace admins list, members count and groups count",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "workspaces"
                ],
                "summary": "Workspace statistics",
                "operationId": "get-workspace-statistics",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.Statistics"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/subscription": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns subscription data.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "subscription"
                ],
                "summary": "Subscription",
                "operationId": "get-workspace-subscription",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace.",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns subscription data.",
                        "schema": {
                            "$ref": "#/definitions/subscription.OutData"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/subscription/purchase_orders/{purchase_order_id}.pdf": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns a Purchase Order document in PDF form.",
                "produces": [
                    "application/pdf"
                ],
                "tags": [
                    "subscriptions_legacy"
                ],
                "summary": "PurchaseOrderPdf",
                "operationId": "get-workspace-purchase-order-pdf",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace.",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the purchase order.",
                        "name": "purchase_order_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Purchase order document in PDF form.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003ePurchase order not found\u003c/li\u003e\u003cli\u003eCompany not found\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/tags": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "List Workspace tags.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "tags"
                ],
                "summary": "Tags",
                "operationId": "get-workspace-tag",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Page number",
                        "name": "page",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Number of items per page",
                        "name": "per_page",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Search by task name",
                        "name": "search",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Tag"
                            }
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Create workspace tags.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "tags"
                ],
                "summary": "Create tag",
                "operationId": "post-workspace-tag",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Post data",
                        "name": "tag_post",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/tags.payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Tag"
                            }
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eInvalid JSON input\u003c/li\u003e\u003cli\u003etag name can't be blank\u003c/li\u003e\u003cli\u003ea tag with the name '{tag_name}' already exists\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Only organization or workspace administrators may manage tags in this workspace.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "patch": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Patch will not be executed if there are errors with some records.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "tags"
                ],
                "summary": "Bulk delete tags",
                "operationId": "patch-workspace-tags",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "Some tag IDs do not belong to workspace.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Only organization or workspace administrators may manage tags in this workspace.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/tags/{tag_id}": {
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Update workspace tags.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "tags"
                ],
                "summary": "Update tag",
                "operationId": "put-workspace-tag",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the tag",
                        "name": "tag_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Put data",
                        "name": "tag_post",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/tags.payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.Tag"
                            }
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003eInvalid JSON input\u003c/li\u003e\u003cli\u003eInvalid tag ID\u003c/li\u003e\u003cli\u003etag name can't be blank\u003c/li\u003e\u003cli\u003ea tag with the name '{tag_name}' already exists\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Only organization or workspace administrators may manage tags in this workspace.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Tag was not found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Delete workspace tags.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "tags"
                ],
                "summary": "Delete tag",
                "operationId": "delete-workspace-tag",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the tag",
                        "name": "tag_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "Invalid tag ID.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Only organization or workspace administrators may manage tags in this workspace.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Tag was not found.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/tasks": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "List Workspace tasks.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "tasks"
                ],
                "summary": "Tasks",
                "operationId": "get-workspace-tasks",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Retrieve tasks created/modified/deleted since this date using UNIX timestamp.",
                        "name": "since",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Page number, default 1",
                        "name": "page",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Number of items per page, default 50",
                        "name": "per_page",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Sort order, default ASC",
                        "name": "sort_order",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Field used for sorting. Default is name. Valid values are 'name' and 'created_at'",
                        "name": "sort_field",
                        "in": "query"
                    },
                    {
                        "type": "boolean",
                        "description": "Filter by active state. You can also pass 'both' to get both active and inactive tasks.",
                        "name": "active",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Filter by project id",
                        "name": "pid",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "format": "date",
                        "description": "Smallest boundary date in the format YYYY-MM-DD",
                        "name": "start_date",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "format": "date",
                        "description": "Biggest boundary date in the format YYYY-MM-DD",
                        "name": "end_date",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Search by task name",
                        "name": "search",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/task.Response"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/tasks/basic": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "List Workspace tasks.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "tasks"
                ],
                "summary": "Tasks",
                "operationId": "get-workspace-tasks-basic",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Page number, default 1",
                        "name": "page",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Number of items per page, default 50",
                        "name": "per_page",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Sort order, default ASC",
                        "name": "sort_order",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Field used for sorting. Default is name. Valid values are 'name' and 'created_at'",
                        "name": "sort_field",
                        "in": "query"
                    },
                    {
                        "type": "boolean",
                        "description": "Filter by active state. You can also pass 'both' to get both active and inactive tasks. Default is true.",
                        "name": "active",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Search for tasks by name.",
                        "name": "search",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Filter by project ID",
                        "name": "project_id",
                        "in": "query"
                    },
                    {
                        "type": "array",
                        "description": "Filter by project IDs (comma-separated)",
                        "name": "project_ids",
                        "in": "query"
                    },
                    {
                        "type": "array",
                        "description": "Filter by task IDs (comma-separated)",
                        "name": "task_ids",
                        "in": "query"
                    },
                    {
                        "type": "boolean",
                        "description": "Filter tasks from projects assigned to the current user. Default is true.",
                        "name": "only_me",
                        "in": "query"
                    },
                    {
                        "type": "array",
                        "description": "Filter by client IDs (comma-separated)",
                        "name": "client_ids",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/task.Response"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/tasks/data": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "List tasks from workspace by project_ids",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "tasks"
                ],
                "summary": "List tasks for given project_ids",
                "operationId": "getWorkspaceTasksData",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "List of project_ids and/or task_ids",
                        "name": "payload",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/tasks.requestBody"
                        }
                    },
                    {
                        "type": "string",
                        "description": "search",
                        "name": "search",
                        "in": "query",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "per_page",
                        "name": "per_page",
                        "in": "query",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "page",
                        "name": "page",
                        "in": "query",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/tasks.responseBody"
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/time_entries": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Creates a new workspace TimeEntry.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "time_entries"
                ],
                "summary": "TimeEntries",
                "operationId": "post-workspace-time-entries",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "TimeEntry parameters.",
                        "name": "workspace_time_entry_post",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/timeentry.Payload"
                        }
                    },
                    {
                        "type": "boolean",
                        "description": "Should the response contain data for meta entities",
                        "name": "meta",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "A workspace TimeEntry.",
                        "schema": {
                            "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.TimeEntry"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/time_entries/{time_entry_ids}": {
            "patch": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "In short: http://tools.ietf.org/html/rfc6902 and http://tools.ietf.org/html/rfc6901 with some additions. Patch will be executed partially when there are errors with some records. No transaction, no rollback.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "time_entries"
                ],
                "summary": "Bulk editing time entries",
                "operationId": "patch-time-entries",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Numeric IDs of time_entries, separated by comma. E.g.: `204301830,202700150,202687559`. The limit is 100 IDs per request.",
                        "name": "time_entry_ids",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Array of batch operations",
                        "name": "patch_input",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/timeentry.PatchInput"
                            }
                        }
                    },
                    {
                        "type": "boolean",
                        "description": "Should the response contain data for meta entities",
                        "name": "meta",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/timeentry.PatchOutput"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/time_entries/{time_entry_id}": {
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Updates a workspace time entry.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "time_entries"
                ],
                "summary": "TimeEntries",
                "operationId": "put-workspace-time-entry-handler",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "TimeEntry ID.",
                        "name": "time_entry_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "TimeEntry parameters.",
                        "name": "workspace_time_entry_post",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/timeentry.Payload"
                        }
                    },
                    {
                        "type": "boolean",
                        "description": "Should the response contain data for meta entities",
                        "name": "meta",
                        "in": "query"
                    },
                    {
                        "type": "boolean",
                        "description": "Should the response contain time entry sharing details",
                        "name": "include_sharing",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "A workspace TimeEntry.",
                        "schema": {
                            "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.TimeEntry"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Deletes a workspace time entry.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "time_entries"
                ],
                "summary": "TimeEntries",
                "operationId": "delete-workspace-time-entries",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "TimeEntry ID.",
                        "name": "time_entry_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns only status code.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/time_entries/{time_entry_id}/stop": {
            "patch": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Stops a workspace time entry.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "time_entries"
                ],
                "summary": "Stop TimeEntry",
                "operationId": "patch-workspace-stop-time-entry-handler",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "TimeEntry ID.",
                        "name": "time_entry_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "The stopped workspace TimeEntry.",
                        "schema": {
                            "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.TimeEntry"
                        }
                    },
                    "400": {
                        "description": "Invalid or missing time_entry_id",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Time entry not found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "409": {
                        "description": "Time entry already stopped",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/time_entry_constraints": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get the time entry constraints for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "workspaces",
                    "time_entry_constraints"
                ],
                "summary": "Get workspace time entry constraints",
                "operationId": "get-workspace-time-entry-constraints",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/models.TimeEntryConstraints"
                        }
                    },
                    "400": {
                        "description": "Workspace not found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Post the time entry constraints for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "workspaces/time_entry_constraints"
                ],
                "summary": "Post workspace time entry constraints",
                "operationId": "post-workspace-time-entry-constraints",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Input data of the time entry constraints.",
                        "name": "time_entry_constraints",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/models.TimeEntryConstraints"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/workspaces.JSONResult"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eAdmin permissions required\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/time_entry_invitations": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get invitations for time entries",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "time_entries"
                ],
                "summary": "TimeEntries",
                "operationId": "get-workspace-time-entry-invitations",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns a list of time entry invitations.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/timeentries.GetTimEntryInvitationsResponse"
                            }
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/time_entry_invitations/{time_entry_invitation_id}/{action}": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Accept or reject an invitation for a time entry",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "time_entries"
                ],
                "summary": "TimeEntries",
                "operationId": "post-workspace-time-entry-invitation-action",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the time entry invitation",
                        "name": "time_entry_invitation_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Action. One of 'accept' or 'reject'",
                        "name": "action",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "Possible errors:\u003cul\u003e\u003cli\u003einvalid time_entry_invitation_id\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/timesheet_setups": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get timesheet setups for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "approvals",
                    "workspaces"
                ],
                "summary": "Get timesheet setups",
                "operationId": "get-timesheet-setups",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the members, comma-separated",
                        "name": "member_ids",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the approvers, comma-separated",
                        "name": "approver_ids",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Field used for sorting, default start_date.",
                        "name": "sort_field",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Sort order.",
                        "name": "sort_order",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "$ref": "#/definitions/timesheetsetups.GetPaginatedResponse"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eInvalid user ID\u003c/li\u003e\u003cli\u003eUser not in workspace\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Approvals are a premium feature",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Create timesheet setups.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "approvals",
                    "workspaces"
                ],
                "summary": "Create a timesheet setup",
                "operationId": "post-timesheet-setups",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Arrays of setup creation parameters.",
                        "name": "payload",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/timesheetsetups.createPayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/timesheetsetups.APITimesheetSetup"
                            }
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eInvalid user ID\u003c/li\u003e\u003cli\u003eToo many user IDs\u003c/li\u003e\u003cli\u003eInvalid date\u003c/li\u003e\u003cli\u003eInvalid periodicity\u003c/li\u003e\u003cli\u003eUser not in workspace\u003c/li\u003e\u003cli\u003eUser is not an admin in the workspace\u003c/li\u003e\u003cli\u003eApprover cannot be member\u003c/li\u003e\u003cli\u003eMember already has a timesheet setup\u003c/li\u003e\u003cli\u003eAt least one reminder channel must be enabled when reminder schedule is set\u003c/li\u003e\u003cli\u003eemail_reminder_enabled and slack_reminder_enabled are required when reminder schedule is set\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Approvals are a premium feature",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/timesheet_setups/{setup_id}": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Updates a timesheet setups.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "approvals",
                    "workspaces"
                ],
                "summary": "Update a timesheet setup",
                "operationId": "put-timesheet-setups",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the timesheet setup",
                        "name": "setup_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Setup update parameters.",
                        "name": "payload",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/timesheetsetups.updatePayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation",
                        "schema": {
                            "$ref": "#/definitions/timesheetsetups.APITimesheetSetup"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eInvalid user ID\u003c/li\u003e\u003cli\u003eInvalid date\u003c/li\u003e\u003cli\u003eUser is not an admin in the workspace\u003c/li\u003e\u003cli\u003eEnd date must respect periodicity\u003c/li\u003e\u003cli\u003eMember already has a timesheet setup\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Approvals are a premium feature",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Timesheet setup was not found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Delete a timesheet setup for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "approvals",
                    "workspaces"
                ],
                "summary": "Delete a timesheet setup",
                "operationId": "delete-timesheet-setups",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the timesheet setup",
                        "name": "setup_id",
                        "in": "path"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eInvalid setup ID\u003c/li\u003e\u003cli\u003eFailed to delete timesheet setup, member has approved, rejected or submitted timesheets\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Approvals are a premium feature",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/timesheets": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get timesheets applying various filters.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "approvals",
                    "workspaces"
                ],
                "summary": "Get timesheets",
                "operationId": "get-workspace-timesheets-handler",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the members, comma-separated",
                        "name": "member_ids",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the approvers, comma-separated",
                        "name": "approver_ids",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID for timesheet setup, comma-separated.",
                        "name": "timesheet_setup_ids",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Timesheet status, comma-separated.",
                        "name": "statuses",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Timesheets starting before this date (YYYY-MM-DD).",
                        "name": "before",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Timesheets starting after this date (YYYY-MM-DD).",
                        "name": "after",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Page number, default 1.",
                        "name": "page",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "Number of items per page, default 20. Also defaults to 20 if provided an greater than 1000.",
                        "name": "per_page",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Field used for sorting, default start_date.",
                        "name": "sort_field",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "Sort order.",
                        "name": "sort_order",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/timesheets.GetPaginatedResponse"
                            }
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eInvalid ID\u003c/li\u003e\u003cli\u003eInvalid date\u003c/li\u003e\u003cli\u003eInvalid status\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Approvals are a premium feature",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Updates a batch of timesheets.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "approvals",
                    "workspaces"
                ],
                "summary": "Update a batch of timesheets",
                "operationId": "put-workspace-timesheets-batch-handler",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Array of timesheet status and rejection comment.",
                        "name": "payload",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/timesheets.PutBatchTimesheetPayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/timesheets.APITimesheet"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eInvalid ID\u003c/li\u003e\u003cli\u003eInvalid date\u003c/li\u003e\u003cli\u003eInvalid status\u003c/li\u003e\u003cli\u003eInvalid status for rejection comment\u003c/li\u003e\u003cli\u003eInvalid timesheet transition\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Approvals are a premium feature",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/timesheets/hours": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get timesheet working hours and total tracked seconds.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "approvals",
                    "workspaces"
                ],
                "summary": "Get timesheets hours",
                "operationId": "get-workspace-timesheet-hours-handler",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Array of timesheet setup IDs and start dates.",
                        "name": "payload",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/timesheets.postTimesheetHoursPayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/timesheets.TimesheetHoursResponse"
                            }
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eInvalid ID\u003c/li\u003e\u003cli\u003eInvalid date\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Approvals are a premium feature",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/timesheets/{setup_id}/{start_date}": {
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Updates a timesheet.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "approvals",
                    "workspaces"
                ],
                "summary": "Update timesheets",
                "operationId": "put-workspace-timesheets-handler",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the timesheet setup.",
                        "name": "setup_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Start date (YYYY-MM-DD) of the timesheet.",
                        "name": "start_date",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Timesheet status and rejection comment.",
                        "name": "payload",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/timesheets.putTimesheetPayload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "$ref": "#/definitions/timesheets.APITimesheet"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eInvalid ID\u003c/li\u003e\u003cli\u003eInvalid date\u003c/li\u003e\u003cli\u003eInvalid status\u003c/li\u003e\u003cli\u003eInvalid status for rejection comment\u003c/li\u003e\u003cli\u003eInvalid timesheet transition\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Approvals are a premium feature",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/timesheets/{setup_id}/{start_date}/history": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get the timesheet history from the event stream.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "approvals",
                    "workspaces"
                ],
                "summary": "Get timesheet history",
                "operationId": "get-workspace-timesheet-history-handler",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the timesheet setup.",
                        "name": "setup_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Start date (YYYY-MM-DD) of the timesheet.",
                        "name": "start_date",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.TimeEntry"
                            }
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eInvalid ID\u003c/li\u003e\u003cli\u003eInvalid date\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Approvals are a premium feature",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/timesheets/{setup_id}/{start_date}/time_entries": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Get the time entries from within a timesheet timeframe.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "approvals",
                    "workspaces"
                ],
                "summary": "Get timesheet time entries",
                "operationId": "get-workspace-timesheet-time-entries-handler",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the timesheet setup.",
                        "name": "setup_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Start date (YYYY-MM-DD) of the timesheet.",
                        "name": "start_date",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.TimeEntry"
                            }
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eInvalid ID\u003c/li\u003e\u003cli\u003eInvalid date\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "402": {
                        "description": "Approvals are a premium feature",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/track_reminders": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Returns a list of track reminders.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "workspaces"
                ],
                "summary": "TrackReminders",
                "operationId": "get-workspace-track-reminders",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns a list of track reminders.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.TrackReminder"
                            }
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Creates a workspace tracking reminder.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "workspaces"
                ],
                "summary": "TrackReminders",
                "operationId": "post-workspace-track-reminders",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Reminder parameters.",
                        "name": "track_reminder_post",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/reminders.payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Creates a workspace tracking reminder.",
                        "schema": {
                            "$ref": "#/definitions/models.TrackReminder"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/track_reminders/{reminder_id}": {
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Updates a workspace tracking reminder.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "workspaces"
                ],
                "summary": "TrackReminder",
                "operationId": "put-workspace-track-reminder",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Reminder ID.",
                        "name": "reminder_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Reminder parameters.",
                        "name": "track_reminder_post",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/reminders.Payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Updates a workspace tracking reminder.",
                        "schema": {
                            "$ref": "#/definitions/models.TrackReminder"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Deletes a workspace tracking reminder.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "workspaces"
                ],
                "summary": "TrackReminder",
                "operationId": "delete-workspace-track-reminder",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Reminder ID.",
                        "name": "reminder_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Returns only status code.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/users": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "List all users for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "users",
                    "workspaces"
                ],
                "summary": "Get workspace users",
                "operationId": "get-workspace-users",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "boolean",
                        "description": "Exclude deleted records in the response",
                        "name": "exclude_deleted",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.SimpleWorkspaceUser"
                            }
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/users/data": {
            "post": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "List of the specified workspace users basic data for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "users",
                    "workspaces"
                ],
                "summary": "Get workspace users data",
                "operationId": "post-workspace-users-data",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Numeric IDs of users",
                        "name": "user_ids",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "integer"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/models.SimpleWorkspaceUser"
                            }
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003euser_ids must not be empty\u003c/li\u003e\u003cli\u003euser_ids must not contain more than 150 elements\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/users/{user_id}": {
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Update the data for a user in a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "users",
                    "workspaces"
                ],
                "summary": "Update workspace user",
                "operationId": "put-workspace-users",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the user",
                        "name": "user_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "Bad Request",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "404": {
                        "description": "Not Found",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/workspace_users": {
            "get": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "List all workspace_users for a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "users"
                ],
                "summary": "Get workspace workspace-users",
                "operationId": "get-workspace-workspace_users",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "If true, includes indirect users (i.e. users assigned via group) to workspace user list",
                        "name": "includeIndirect",
                        "in": "query",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.WorkspaceUser"
                            }
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found\u003c/li\u003e\u003cli\u003eUser not found\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        },
        "/workspaces/{workspace_id}/workspace_users/{workspace_user_id}": {
            "put": {
                "security": [
                    {
                        "BasicAuth": []
                    }
                ],
                "description": "Update the data for a workspace_user in a given workspace.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "users",
                    "workspaces"
                ],
                "summary": "Update workspace-user",
                "operationId": "put-workspace-workspace_users",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace user",
                        "name": "workspace_user_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Changes that need to be applied to the user data.",
                        "name": "post",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/github_com_toggl_toggl_api_internal_services_workspace_user.Payload"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful operation.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "400": {
                        "description": "\u003cp\u003ePossible error messages:\u003c/p\u003e\u003cul\u003e\u003cli\u003eWorkspace not found/accessible\u003c/li\u003e\u003cli\u003eUser not found\u003c/li\u003e\u003cli\u003eWorkspace user not found/accessible by user\u003c/li\u003e\u003cli\u003eWorking hours must be positive or null\u003c/li\u003e\u003cli\u003eInvalid role_id.\u003c/li\u003e\u003cli\u003eCannot use both admin flags and role_id.\u003c/li\u003e\u003cli\u003eUser does not exist in the organization.\u003c/li\u003e\u003cli\u003eUser does not exist in the workspace.\u003c/li\u003e\u003c/ul\u003e",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "User does not have access to this resource.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            },
            "delete": {
                "description": "Removes user from workspace",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "users",
                    "workspaces"
                ],
                "summary": "Delete workspace user",
                "operationId": "delete-workspace-user",
                "parameters": [
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace.",
                        "name": "workspace_id",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "integer",
                        "description": "Numeric ID of the workspace user.",
                        "name": "workspace_user_id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    },
                    "400": {
                        "description": "Bad Request",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "403": {
                        "description": "Workspace user is not found or accessible",
                        "schema": {
                            "type": "string"
                        }
                    },
                    "500": {
                        "description": "Internal Server Error",
                        "schema": {
                            "type": "string"
                        }
                    }
                }
            }
        }
    },
    "definitions": {
        "billing.FancyPlan": {
            "type": "object",
            "properties": {
                "name": {
                    "type": "string"
                },
                "plan_id": {
                    "type": "integer"
                },
                "pricing_plans": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/billing.fancyPricingPlan"
                    }
                }
            }
        },
        "billing.PricingStruct": {
            "type": "object",
            "properties": {
                "currency_id": {
                    "type": "integer"
                },
                "discount_percentage": {
                    "type": "integer"
                },
                "discount_to": {
                    "type": "string"
                },
                "plans": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/billing.FancyPlan"
                    }
                },
                "tax_included": {
                    "type": "boolean"
                },
                "tax_percentage": {
                    "type": "number"
                },
                "tax_type": {
                    "type": "string"
                },
                "user_count": {
                    "type": "integer"
                }
            }
        },
        "billing.fancyPricingPlan": {
            "type": "object",
            "properties": {
                "actual_price_in_usd_cents": {
                    "type": "integer"
                },
                "campaign": {
                    "$ref": "#/definitions/models.Campaign"
                },
                "list_price_in_usd_cents": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                },
                "period": {
                    "type": "integer"
                },
                "price_point_handle": {
                    "type": "string"
                },
                "prices_month": {
                    "$ref": "#/definitions/billing.pricesStruct"
                },
                "prices_period": {
                    "$ref": "#/definitions/billing.pricesStruct"
                },
                "pricing_plan_id": {
                    "type": "integer"
                }
            }
        },
        "billing.pricesStruct": {
            "type": "object",
            "properties": {
                "actual": {
                    "type": "integer"
                },
                "base": {
                    "type": "integer"
                },
                "with_tax": {
                    "type": "integer"
                }
            }
        },
        "client.LinkedSsoProfile": {
            "type": "object",
            "properties": {
                "domain": {
                    "type": "string",
                    "example": "acme.com"
                },
                "name": {
                    "type": "string",
                    "example": "Default SSO profile for Acme Corp"
                },
                "sso_profile_id": {
                    "type": "integer",
                    "example": 442244
                }
            }
        },
        "client.Payload": {
            "type": "object",
            "properties": {
                "external_reference": {
                    "type": "string"
                },
                "name": {
                    "description": "Client name",
                    "type": "string"
                },
                "notes": {
                    "type": "string"
                }
            }
        },
        "clients.ArchiveClientsResponse": {
            "type": "object",
            "properties": {
                "client_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "project_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "customer.Coupon": {
            "type": "object",
            "properties": {
                "amount_off": {
                    "type": "integer"
                },
                "deleted": {
                    "type": "boolean"
                },
                "duration": {
                    "type": "string"
                },
                "duration_in_months": {
                    "type": "integer"
                },
                "id": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "percent_off": {
                    "type": "number"
                },
                "valid": {
                    "type": "boolean"
                }
            }
        },
        "customer.DiscountResponse": {
            "type": "object",
            "properties": {
                "coupon": {
                    "$ref": "#/definitions/customer.Coupon"
                },
                "promotion_code": {
                    "$ref": "#/definitions/customer.PromotionCode"
                }
            }
        },
        "customer.PaymentMethod": {
            "type": "object",
            "properties": {
                "card": {
                    "$ref": "#/definitions/customer.PaymentMethodCard"
                },
                "sepa_debit": {
                    "$ref": "#/definitions/customer.PaymentMethodSEPADebit"
                },
                "type": {
                    "type": "string"
                },
                "us_bank_account": {
                    "$ref": "#/definitions/customer.PaymentMethodUSBankAccount"
                }
            }
        },
        "customer.PaymentMethodCard": {
            "type": "object",
            "properties": {
                "brand": {
                    "type": "string"
                },
                "country": {
                    "type": "string"
                },
                "exp_month": {
                    "type": "integer"
                },
                "exp_year": {
                    "type": "integer"
                },
                "last4": {
                    "type": "string"
                }
            }
        },
        "customer.PaymentMethodSEPADebit": {
            "type": "object",
            "properties": {
                "bank_code": {
                    "type": "string"
                },
                "country": {
                    "type": "string"
                },
                "last4": {
                    "type": "string"
                }
            }
        },
        "customer.PaymentMethodUSBankAccount": {
            "type": "object",
            "properties": {
                "bank_name": {
                    "type": "string"
                },
                "blocked": {
                    "type": "boolean"
                },
                "blocked_reason": {
                    "type": "string"
                },
                "last4": {
                    "type": "string"
                }
            }
        },
        "customer.PromotionCode": {
            "type": "object",
            "properties": {
                "active": {
                    "type": "boolean"
                },
                "code": {
                    "type": "string"
                },
                "expires_at": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                }
            }
        },
        "customer.UnifiedCustomerResponse": {
            "type": "object",
            "properties": {
                "address_line": {
                    "type": "string"
                },
                "country_id": {
                    "type": "string"
                },
                "currency": {
                    "type": "string"
                },
                "customer_name": {
                    "type": "string"
                },
                "default_payment_method": {
                    "$ref": "#/definitions/customer.PaymentMethod"
                },
                "discount": {
                    "$ref": "#/definitions/customer.DiscountResponse"
                },
                "id": {
                    "type": "string"
                },
                "postal_code": {
                    "type": "string"
                },
                "site": {
                    "type": "string"
                },
                "state": {
                    "type": "string"
                },
                "tax_number": {
                    "type": "string"
                },
                "toggl_user_email": {
                    "type": "string"
                },
                "toggl_user_id": {
                    "type": "integer"
                }
            }
        },
        "dashboard.allActivities": {
            "type": "object",
            "properties": {
                "description": {
                    "type": "string"
                },
                "duration": {
                    "type": "integer"
                },
                "project_id": {
                    "type": "integer"
                },
                "stop": {
                    "type": "string",
                    "format": "date-time"
                },
                "tid": {
                    "type": "integer"
                },
                "user_id": {
                    "type": "integer"
                }
            }
        },
        "desktop.LoginToken": {
            "type": "object",
            "properties": {
                "login_token": {
                    "type": "string"
                }
            }
        },
        "expenses.Expense": {
            "type": "object",
            "properties": {
                "approved_at": {
                    "type": "string"
                },
                "approved_by": {
                    "type": "integer"
                },
                "category": {
                    "type": "string"
                },
                "chat_gpt_output": {
                    "type": "string"
                },
                "comment": {
                    "type": "string"
                },
                "created_at": {
                    "type": "string"
                },
                "currency": {
                    "type": "string"
                },
                "date_of_expense": {
                    "description": "local date with no timezone info",
                    "type": "string"
                },
                "deleted_at": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "download_url": {
                    "type": "string"
                },
                "exchange_rate": {
                    "type": "number"
                },
                "exchange_rate_timestamp": {
                    "type": "string"
                },
                "id": {
                    "type": "integer"
                },
                "ocr_output": {
                    "type": "string"
                },
                "original_description": {
                    "type": "string"
                },
                "original_receipt_location": {
                    "type": "string"
                },
                "receipt_location": {
                    "type": "string"
                },
                "receipt_mime_type": {
                    "type": "string"
                },
                "receipt_no": {
                    "type": "string"
                },
                "rejection_reason": {
                    "type": "string"
                },
                "service_provider": {
                    "type": "string"
                },
                "service_provider_address": {
                    "type": "string"
                },
                "service_provider_country": {
                    "type": "string"
                },
                "state": {
                    "type": "string"
                },
                "tax_amount": {
                    "type": "integer"
                },
                "tax_amount_converted": {
                    "type": "integer"
                },
                "timezone": {
                    "type": "string"
                },
                "total_amount": {
                    "type": "integer"
                },
                "total_amount_converted": {
                    "type": "integer"
                },
                "trip_id": {
                    "type": "integer"
                },
                "update_reason": {
                    "type": "string"
                },
                "updated_at": {
                    "type": "string"
                },
                "updated_by": {
                    "type": "integer"
                },
                "user_id": {
                    "type": "integer"
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "export.payload": {
            "type": "object",
            "properties": {
                "profile": {
                    "type": "boolean"
                },
                "timeline": {
                    "type": "boolean"
                }
            }
        },
        "favorites.CreateFavorite": {
            "type": "object",
            "properties": {
                "billable": {
                    "type": "boolean"
                },
                "description": {
                    "type": "string"
                },
                "project_id": {
                    "type": "integer"
                },
                "public": {
                    "type": "boolean"
                },
                "rank": {
                    "type": "integer"
                },
                "tag_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "task_id": {
                    "type": "integer"
                }
            }
        },
        "favorites.UpdateFavorite": {
            "type": "object",
            "properties": {
                "billable": {
                    "type": "boolean"
                },
                "description": {
                    "type": "string"
                },
                "favorite_id": {
                    "type": "integer"
                },
                "postedFields": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "project_id": {
                    "type": "integer"
                },
                "public": {
                    "type": "boolean"
                },
                "rank": {
                    "type": "integer"
                },
                "tag_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "task_id": {
                    "type": "integer"
                }
            }
        },
        "feature.UpsellResponse": {
            "type": "object",
            "properties": {
                "feature_id": {
                    "type": "integer"
                },
                "is_default_feature": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "upsell_plan_handle": {
                    "type": "string"
                },
                "upsell_plan_id": {
                    "type": "integer"
                }
            }
        },
        "github_com_toggl_calendar_api_foundation_models.Color": {
            "type": "object",
            "properties": {
                "background": {
                    "type": "string"
                },
                "foreground": {
                    "type": "string"
                }
            }
        },
        "github_com_toggl_toggl_api_internal_models.Calendar": {
            "type": "object",
            "properties": {
                "background_color": {
                    "type": "string"
                },
                "calendar_id": {
                    "type": "integer"
                },
                "calendar_integration_id": {
                    "type": "integer"
                },
                "created_at": {
                    "type": "string"
                },
                "default_planned_task_id": {
                    "type": "integer"
                },
                "default_project_id": {
                    "type": "integer"
                },
                "default_workspace_id": {
                    "type": "integer"
                },
                "deleted_at": {
                    "type": "string"
                },
                "external_id": {
                    "type": "string"
                },
                "foreground_color": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "remind_tracking": {
                    "description": "The following fields are deprecated but we need to keep them for backward compatibility with previous versions\nof mobile apps",
                    "type": "boolean"
                },
                "selected": {
                    "type": "boolean"
                },
                "updated_at": {
                    "type": "string"
                }
            }
        },
        "github_com_toggl_toggl_api_internal_models.Event": {
            "type": "object",
            "properties": {
                "all_day": {
                    "type": "boolean"
                },
                "calendar_event_id": {
                    "type": "integer"
                },
                "calendar_id": {
                    "type": "integer"
                },
                "color": {
                    "$ref": "#/definitions/github_com_toggl_calendar_api_foundation_models.Color"
                },
                "created_at": {
                    "type": "string"
                },
                "end_time": {
                    "type": "string"
                },
                "external_id": {
                    "type": "string"
                },
                "html_link": {
                    "type": "string"
                },
                "ical_uid": {
                    "description": "This is a unique ID used to avoid duplicate events when getting information\nfrom multiple sources. E. G. the mobile may get calendar events without BE integration,\nso they should be able to tell if an event is repeated.",
                    "type": "string"
                },
                "internal_ref_id": {
                    "description": "Potentially nil fields, attempt retrieval with Reference() method.",
                    "type": "integer"
                },
                "internal_ref_product_id": {
                    "type": "integer"
                },
                "internal_ref_type": {
                    "type": "string"
                },
                "meeting_link": {
                    "type": "string"
                },
                "provider": {
                    "type": "string"
                },
                "start_time": {
                    "type": "string"
                },
                "title": {
                    "type": "string"
                },
                "updated": {
                    "description": "Deprecated",
                    "type": "string"
                },
                "updated_at": {
                    "type": "string"
                }
            }
        },
        "github_com_toggl_toggl_api_internal_models.Group": {
            "type": "object",
            "properties": {
                "at": {
                    "type": "string"
                },
                "has_users": {
                    "type": "boolean"
                },
                "id": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "github_com_toggl_toggl_api_internal_models.Integration": {
            "type": "object",
            "properties": {
                "auto_track": {
                    "type": "boolean"
                },
                "calendar_integration_id": {
                    "type": "integer"
                },
                "created_at": {
                    "type": "string"
                },
                "email": {
                    "type": "string"
                },
                "error_status": {
                    "type": "string"
                },
                "has_write_scope": {
                    "type": "boolean"
                },
                "origin_product_id": {
                    "description": "The product that initially integrated the calendar.",
                    "type": "integer"
                },
                "provider": {
                    "type": "string"
                },
                "scopes": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            }
        },
        "github_com_toggl_toggl_api_internal_models.Invitation": {
            "type": "object",
            "properties": {
                "code": {
                    "type": "string"
                },
                "email": {
                    "type": "string"
                },
                "organization_id": {
                    "type": "integer"
                },
                "organization_name": {
                    "type": "string"
                },
                "sender_email": {
                    "type": "string"
                },
                "sender_name": {
                    "type": "string"
                }
            }
        },
        "github_com_toggl_toggl_api_internal_models.OrganizationOwner": {
            "type": "object",
            "properties": {
                "avatar_url": {
                    "type": "string"
                },
                "email": {
                    "type": "string"
                },
                "id": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                },
                "organization_id": {
                    "type": "integer"
                },
                "organization_user_created_at": {
                    "type": "string"
                },
                "organization_user_id": {
                    "type": "integer"
                },
                "organization_user_updated_at": {
                    "type": "string"
                },
                "toggl_accounts_id": {
                    "type": "string"
                },
                "user_id": {
                    "type": "integer"
                }
            }
        },
        "github_com_toggl_toggl_api_internal_models.OrganizationUserSimple": {
            "type": "object",
            "properties": {
                "avatar_url": {
                    "type": "string"
                },
                "inactive": {
                    "type": "boolean"
                },
                "joined": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "user_id": {
                    "type": "integer"
                }
            }
        },
        "github_com_toggl_toggl_api_internal_models.Plan": {
            "type": "object",
            "properties": {
                "id": {
                    "type": "integer"
                },
                "max_user_count": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                },
                "pricing_plans": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.PricingPlan"
                    }
                },
                "product_handle": {
                    "type": "string"
                }
            }
        },
        "github_com_toggl_toggl_api_internal_models.PlanFeature": {
            "type": "object",
            "properties": {
                "description": {
                    "type": "string"
                },
                "feature_id": {
                    "type": "integer"
                },
                "is_default_feature": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "trial_only": {
                    "type": "boolean"
                }
            }
        },
        "github_com_toggl_toggl_api_internal_models.Project": {
            "type": "object",
            "properties": {
                "active": {
                    "description": "Whether the project is active or archived",
                    "type": "boolean"
                },
                "actual_hours": {
                    "description": "Actual hours",
                    "type": "integer",
                    "x-nullable": true
                },
                "actual_seconds": {
                    "description": "Actual seconds",
                    "type": "integer",
                    "x-nullable": true
                },
                "at": {
                    "description": "Last updated date",
                    "type": "string"
                },
                "auto_estimates": {
                    "description": "Whether estimates are based on task hours, premium feature",
                    "type": "boolean",
                    "x-nullable": true
                },
                "billable": {
                    "description": "Whether the project is billable, premium feature",
                    "type": "boolean",
                    "x-nullable": true
                },
                "can_track_time": {
                    "type": "boolean"
                },
                "cid": {
                    "description": "Client ID legacy field",
                    "type": "integer"
                },
                "client_id": {
                    "description": "Client ID",
                    "type": "integer",
                    "x-nullable": true
                },
                "client_name": {
                    "type": "string"
                },
                "color": {
                    "description": "Color",
                    "type": "string"
                },
                "created_at": {
                    "description": "Creation date",
                    "type": "string"
                },
                "currency": {
                    "description": "Currency, premium feature",
                    "type": "string",
                    "x-nullable": true
                },
                "current_period": {
                    "description": "Current project period, premium feature",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.RecurringPeriod"
                        }
                    ],
                    "x-nullable": true
                },
                "end_date": {
                    "description": "End date",
                    "type": "string"
                },
                "estimated_hours": {
                    "description": "Estimated hours",
                    "type": "integer",
                    "x-nullable": true
                },
                "estimated_seconds": {
                    "description": "Estimated seconds",
                    "type": "integer",
                    "x-nullable": true
                },
                "external_reference": {
                    "description": "ExternalReference can be used to store an external reference to the Track Project Entity.",
                    "type": "string"
                },
                "fixed_fee": {
                    "description": "Fixed fee, premium feature",
                    "type": "number"
                },
                "id": {
                    "description": "Project ID",
                    "type": "integer"
                },
                "integration_ext_id": {
                    "description": "The external ID of the linked entity in the external system (e.g. JIRA/SalesForce)",
                    "type": "string"
                },
                "integration_ext_type": {
                    "description": "The external type of the linked entity in the external system (e.g. JIRA/SalesForce)",
                    "type": "string"
                },
                "integration_provider": {
                    "description": "The provider (e.g. JIRA/SalesForce) that has an entity linked to this Toggl Track entity",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.IntegrationProvider"
                        }
                    ]
                },
                "is_private": {
                    "description": "Whether the project is private",
                    "type": "boolean"
                },
                "name": {
                    "description": "Name",
                    "type": "string"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "pinned": {
                    "type": "boolean"
                },
                "rate": {
                    "description": "Hourly rate",
                    "type": "number"
                },
                "rate_last_updated": {
                    "description": "Last date for rate change",
                    "type": "string",
                    "x-nullable": true
                },
                "recurring": {
                    "description": "Whether the project is recurring, premium feature",
                    "type": "boolean"
                },
                "recurring_parameters": {
                    "description": "Project recurring parameters, premium feature",
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.RecurringProjectParameters"
                    }
                },
                "start_date": {
                    "description": "Start date",
                    "type": "string"
                },
                "status": {
                    "description": "Status of the project (upcoming, active, ended, archived, deleted)",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.ProjectStatus"
                        }
                    ]
                },
                "template": {
                    "description": "Whether the project is used as template, premium feature",
                    "type": "boolean",
                    "x-nullable": true
                },
                "template_id": {
                    "description": "Template ID",
                    "type": "integer",
                    "x-nullable": true
                },
                "total_count": {
                    "description": "Total number of projects found",
                    "type": "integer"
                },
                "wid": {
                    "description": "Workspace ID legacy field",
                    "type": "integer"
                },
                "workspace_id": {
                    "description": "Workspace ID",
                    "type": "integer"
                }
            }
        },
        "github_com_toggl_toggl_api_internal_models.TimeEntry": {
            "type": "object",
            "properties": {
                "at": {
                    "description": "When was last updated, the field follows the ISO 8601 format (HH:mm:ss.ssssssZ)",
                    "type": "string"
                },
                "billable": {
                    "description": "Whether the time entry is marked as billable",
                    "type": "boolean"
                },
                "client_id": {
                    "description": "Related entities meta fields - if requested",
                    "type": "integer"
                },
                "client_name": {
                    "type": "string"
                },
                "description": {
                    "description": "Time Entry description, null if not provided at creation/update",
                    "type": "string",
                    "x-nullable": true
                },
                "duration": {
                    "description": "Time entry duration. For running entries should be negative, preferable -1",
                    "type": "integer"
                },
                "duronly": {
                    "description": "Used to create a TE with a duration but without a stop time, this field is deprecated for GET endpoints where the value will always be true.",
                    "type": "boolean"
                },
                "expense_ids": {
                    "description": "Work expenses",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "id": {
                    "description": "Time Entry ID",
                    "type": "integer"
                },
                "permissions": {
                    "description": "Permission list",
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "pid": {
                    "description": "Project ID, legacy field",
                    "type": "integer"
                },
                "project_active": {
                    "type": "boolean"
                },
                "project_billable": {
                    "type": "boolean"
                },
                "project_color": {
                    "type": "string"
                },
                "project_id": {
                    "description": "Project ID. Can be null if project was not provided or project was later deleted",
                    "type": "integer",
                    "x-nullable": true
                },
                "project_name": {
                    "type": "string"
                },
                "shared_with": {
                    "description": "Indicates who the time entry has been shared with",
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.TimeEntrySharedWith"
                    }
                },
                "start": {
                    "description": "Start time in UTC",
                    "type": "string"
                },
                "stop": {
                    "description": "Stop time in UTC, can be null if it's still running or created with \"duration\" and \"duronly\" fields",
                    "type": "string"
                },
                "tag_ids": {
                    "description": "Tag IDs, null if tags were not provided or were later deleted",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "tags": {
                    "description": "Tag names, null if tags were not provided or were later deleted",
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "task_id": {
                    "description": "Task ID. Can be null if task was not provided or project was later deleted",
                    "type": "integer",
                    "x-nullable": true
                },
                "task_name": {
                    "type": "string"
                },
                "tid": {
                    "description": "Task ID, legacy field",
                    "type": "integer"
                },
                "uid": {
                    "description": "Time Entry creator ID, legacy field",
                    "type": "integer"
                },
                "user_avatar_url": {
                    "type": "string"
                },
                "user_id": {
                    "description": "Time Entry creator ID",
                    "type": "integer"
                },
                "user_name": {
                    "type": "string"
                },
                "wid": {
                    "description": "Workspace ID, legacy field",
                    "type": "integer"
                },
                "workspace_id": {
                    "description": "Workspace ID",
                    "type": "integer"
                }
            }
        },
        "github_com_toggl_toggl_api_internal_models.TogglUser": {
            "type": "object",
            "properties": {
                "2fa_enabled": {
                    "type": "boolean"
                },
                "api_token": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "at": {
                    "type": "string",
                    "format": "date-time"
                },
                "beginning_of_week": {
                    "type": "integer"
                },
                "country_id": {
                    "type": "integer"
                },
                "created_at": {
                    "type": "string",
                    "format": "date-time"
                },
                "default_workspace_id": {
                    "type": "integer"
                },
                "email": {
                    "type": "string",
                    "format": "email"
                },
                "fullname": {
                    "type": "string"
                },
                "has_password": {
                    "type": "boolean"
                },
                "id": {
                    "type": "integer"
                },
                "image_url": {
                    "type": "string",
                    "example": "http://example.com"
                },
                "openid_email": {
                    "type": "string",
                    "format": "email"
                },
                "openid_enabled": {
                    "type": "boolean"
                },
                "options": {
                    "description": "will be omitted if empty",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.Options"
                        }
                    ]
                },
                "timezone": {
                    "type": "string"
                },
                "updated_at": {
                    "type": "string",
                    "format": "date-time"
                }
            }
        },
        "github_com_toggl_toggl_api_internal_models.Workspace": {
            "type": "object",
            "properties": {
                "admin": {
                    "description": "Current user is workspace admin\nDeprecated",
                    "type": "boolean"
                },
                "api_token": {
                    "description": "deprecated",
                    "type": "string"
                },
                "at": {
                    "description": "Timestamp of last workspace change",
                    "type": "string"
                },
                "business_ws": {
                    "description": "Workspace on Premium subscription",
                    "type": "boolean"
                },
                "csv_upload": {
                    "description": "CSV upload data",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.CsvUpload"
                        }
                    ]
                },
                "default_currency": {
                    "description": "Default currency, premium feature, optional, only for existing WS, will be 'USD' initially",
                    "type": "string"
                },
                "default_hourly_rate": {
                    "description": "The default hourly rate, premium feature, optional, only for existing WS, will be 0.0 initially",
                    "type": "number"
                },
                "disable_approvals": {
                    "description": "Disable approvals in the workspace",
                    "type": "boolean"
                },
                "disable_expenses": {
                    "description": "Disable expenses in the workspace",
                    "type": "boolean"
                },
                "disable_timesheet_view": {
                    "description": "Disable timesheet view in the workspace",
                    "type": "boolean"
                },
                "hide_start_end_times": {
                    "type": "boolean"
                },
                "ical_enabled": {
                    "description": "Calendar integration enabled",
                    "type": "boolean"
                },
                "ical_url": {
                    "description": "URL of calendar",
                    "type": "string"
                },
                "id": {
                    "description": "Identifier of the workspace",
                    "type": "integer"
                },
                "last_modified": {
                    "description": "Last modification of data in the workspace",
                    "type": "string"
                },
                "limit_public_project_data": {
                    "description": "Limit public projects data in reports to admins.",
                    "type": "boolean"
                },
                "logo_url": {
                    "description": "URL of workspace logo",
                    "type": "string"
                },
                "max_data_retention_days": {
                    "description": "How far back free workspaces can access data.",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.DataRetentionDays"
                        }
                    ]
                },
                "name": {
                    "description": "Name of the workspace",
                    "type": "string"
                },
                "only_admins_may_create_projects": {
                    "description": "Only admins will be able to create projects, optional, only for existing WS, will be false initially",
                    "type": "boolean"
                },
                "only_admins_may_create_tags": {
                    "description": "Only admins will be able to create tags, optional, only for existing WS, will be false initially",
                    "type": "boolean"
                },
                "only_admins_see_team_dashboard": {
                    "description": "Only admins will be able to see the team dashboard, optional, only for existing WS, will be false initially",
                    "type": "boolean"
                },
                "organization_id": {
                    "description": "Identifier of the organization",
                    "type": "integer"
                },
                "permissions": {
                    "description": "Permissions list",
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "premium": {
                    "description": "Workspace on Starter subscription",
                    "type": "boolean"
                },
                "projects_billable_by_default": {
                    "description": "New projects billable by default",
                    "type": "boolean"
                },
                "projects_enforce_billable": {
                    "description": "Whether tracking time to projects will enforce billable setting to be respected.",
                    "type": "boolean"
                },
                "projects_private_by_default": {
                    "description": "Workspace setting for default project visbility.",
                    "type": "boolean"
                },
                "rate_last_updated": {
                    "description": "Timestamp of last workspace rate update",
                    "type": "string"
                },
                "reports_collapse": {
                    "description": "Whether reports should be collapsed by default, optional, only for existing WS, will be true initially",
                    "type": "boolean"
                },
                "role": {
                    "description": "Role of the current user in the workspace",
                    "type": "string"
                },
                "rounding": {
                    "description": "Default rounding, premium feature, optional, only for existing WS. 0 - nearest, 1 - round up, -1 - round down",
                    "type": "integer"
                },
                "rounding_minutes": {
                    "description": "Default rounding in minutes, premium feature, optional, only for existing WS",
                    "type": "integer"
                },
                "subscription": {
                    "description": "deprecated",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.Subscription"
                        }
                    ]
                },
                "suspended_at": {
                    "description": "Timestamp of suspension",
                    "type": "string",
                    "format": "date-time"
                },
                "te_constraints": {
                    "description": "Time entry constraints setting",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.TimeEntryConstraints"
                        }
                    ]
                },
                "working_hours_in_minutes": {
                    "description": "Working hours in minutes",
                    "type": "integer"
                }
            }
        },
        "github_com_toggl_toggl_api_internal_models.WorkspaceUser": {
            "type": "object",
            "properties": {
                "2fa_enabled": {
                    "description": "Flag indicating whether use has 2FA enabled or not.",
                    "type": "boolean"
                },
                "active": {
                    "description": "Flag indicating if user accepted the invitation",
                    "type": "boolean"
                },
                "admin": {
                    "description": "Flag indicating if user is admin",
                    "type": "boolean"
                },
                "at": {
                    "description": "Timestamp of the last update",
                    "type": "string"
                },
                "avatar_file_name": {
                    "description": "URL of avatar",
                    "type": "string"
                },
                "email": {
                    "description": "Email of the user",
                    "type": "string"
                },
                "group_ids": {
                    "description": "List of groups the user belongs to",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "id": {
                    "description": "Identifier of the user  workspace",
                    "type": "integer"
                },
                "inactive": {
                    "description": "Flag indicating if user was deactivated by admin of the workspace",
                    "type": "boolean"
                },
                "invitation_code": {
                    "description": "internal",
                    "type": "string"
                },
                "invite_url": {
                    "description": "internal",
                    "type": "string"
                },
                "is_direct": {
                    "description": "Flag indicating if user is a direct member of the workspace (is not assigned to the workspace using the group)",
                    "type": "boolean"
                },
                "labor_cost": {
                    "description": "Labor cost assigned to the user",
                    "type": "number"
                },
                "labor_cost_last_updated": {
                    "description": "Timestamp of the last labor cost update",
                    "type": "string"
                },
                "name": {
                    "description": "Name of the user",
                    "type": "string"
                },
                "organization_admin": {
                    "description": "Flag indicating if user is admin inside organization",
                    "type": "boolean"
                },
                "rate": {
                    "description": "Rate assigned to the user",
                    "type": "number"
                },
                "rate_last_updated": {
                    "description": "Timestamp of the last rate update",
                    "type": "string"
                },
                "role": {
                    "description": "Role of the user",
                    "type": "string"
                },
                "role_id": {
                    "type": "integer"
                },
                "timezone": {
                    "description": "Timezone of the user",
                    "type": "string"
                },
                "uid": {
                    "description": "Global user identifier",
                    "type": "integer"
                },
                "user_id": {
                    "description": "UserID alternative JSON field, only used by get-organization-workspaces-workspaceusers",
                    "type": "integer"
                },
                "view_edit_billable_rates": {
                    "description": "Granular rate permission flags\nOnly takes effect on roles with conditional rate permissions",
                    "type": "boolean"
                },
                "view_edit_labor_costs": {
                    "type": "boolean"
                },
                "wid": {
                    "description": "Workspace identifier",
                    "type": "integer"
                },
                "working_hours_in_minutes": {
                    "description": "Working hours value in minutes",
                    "type": "integer"
                },
                "workspace_admin": {
                    "description": "Flag indicating if user is admin inside workspace",
                    "type": "boolean"
                },
                "workspace_id": {
                    "description": "UserID alternative JSON field, only used by get-organization-workspaces-workspaceusers",
                    "type": "integer"
                }
            }
        },
        "github_com_toggl_toggl_api_internal_services_organization_user.Payload": {
            "type": "object",
            "properties": {
                "email": {
                    "type": "string"
                },
                "groups": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "inactive": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "organization_admin": {
                    "type": "boolean"
                },
                "role_id": {
                    "type": "integer"
                },
                "workspaces": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.OrgUserWorkspace"
                    }
                }
            }
        },
        "github_com_toggl_toggl_api_internal_services_workspace_user.Payload": {
            "type": "object",
            "properties": {
                "admin": {
                    "description": "deprecated",
                    "type": "boolean"
                },
                "inactive": {
                    "type": "boolean"
                },
                "labor_cost": {
                    "description": "Custom labor cost for project user",
                    "type": "number"
                },
                "labor_cost_change_mode": {
                    "type": "string"
                },
                "postedFields": {
                    "description": "for explicit NULL-s, add field name here",
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "rate": {
                    "description": "Paid feature",
                    "type": "number"
                },
                "rate_change_mode": {
                    "description": "Paid feature",
                    "type": "string"
                },
                "role": {
                    "description": "Allowed inputs: \"admin\", \"user\", \"projectlead\" and \"teamlead\"",
                    "type": "string"
                },
                "role_id": {
                    "type": "integer"
                },
                "view_edit_billable_rates": {
                    "type": "boolean"
                },
                "view_edit_labor_costs": {
                    "type": "boolean"
                },
                "working_hours_in_minutes": {
                    "description": "Paid feature",
                    "type": "integer"
                }
            }
        },
        "group.NamePayload": {
            "type": "object",
            "properties": {
                "name": {
                    "type": "string"
                }
            }
        },
        "group.OrganizationGroupResponse": {
            "type": "object",
            "properties": {
                "at": {
                    "type": "string"
                },
                "group_id": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "users": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.OrganizationUserSimple"
                    }
                },
                "workspaces": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "group.Payload": {
            "type": "object",
            "properties": {
                "name": {
                    "description": "Group name",
                    "type": "string"
                },
                "users": {
                    "description": "Group users, optional",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "workspaces": {
                    "description": "Group workspaces",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "group.ProjectGroupPayload": {
            "type": "object",
            "properties": {
                "group_id": {
                    "description": "Group ID",
                    "type": "integer"
                },
                "project_id": {
                    "description": "Project ID",
                    "type": "integer"
                }
            }
        },
        "groups.PatchFailure": {
            "type": "object",
            "properties": {
                "message": {
                    "type": "string"
                },
                "patch": {
                    "$ref": "#/definitions/groups.PatchInput"
                }
            }
        },
        "groups.PatchInput": {
            "type": "object",
            "properties": {
                "op": {
                    "type": "string"
                },
                "path": {
                    "type": "string"
                },
                "value": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "groups.PatchOutput": {
            "type": "object",
            "properties": {
                "failure": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/groups.PatchFailure"
                    }
                },
                "success": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/groups.PatchInput"
                    }
                }
            }
        },
        "handlercalendar.CalendarsResponse": {
            "type": "object",
            "properties": {
                "calendars": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Calendar"
                    }
                },
                "next_page_token": {
                    "type": "string"
                }
            }
        },
        "handlercalendar.EventAttendee": {
            "type": "object",
            "properties": {
                "email": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            }
        },
        "handlercalendar.EventsResponse": {
            "type": "object",
            "properties": {
                "events": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Event"
                    }
                },
                "next_page_token": {
                    "type": "string"
                }
            }
        },
        "handlercalendar.FetchedCalendarsResponse": {
            "type": "object",
            "properties": {
                "fetched_calendars": {
                    "type": "integer"
                }
            }
        },
        "handlercalendar.PatchCalendar": {
            "type": "object",
            "properties": {
                "default_planned_task_id": {
                    "type": "integer"
                },
                "default_project_id": {
                    "type": "integer"
                },
                "default_workspace_id": {
                    "type": "integer"
                },
                "remind_tracking": {
                    "description": "The following fields are deprecated but we need to keep them for backward compatibility with previous versions\nof mobile apps",
                    "type": "boolean"
                },
                "selected": {
                    "type": "boolean"
                }
            }
        },
        "handlercalendar.PostDetailsSuggestionRequest": {
            "type": "object",
            "properties": {
                "event_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "handlercalendar.PostDetailsSuggestionResponse": {
            "type": "object",
            "properties": {
                "suggestions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/handlercalendar.PostDetailsSuggestionResponseItem"
                    }
                }
            }
        },
        "handlercalendar.PostDetailsSuggestionResponseItem": {
            "type": "object",
            "properties": {
                "event_id": {
                    "type": "integer"
                },
                "suggestion": {
                    "$ref": "#/definitions/models.Suggestion"
                }
            }
        },
        "handlercalendar.Response": {
            "type": "object",
            "properties": {
                "fetched_events": {
                    "type": "integer"
                }
            }
        },
        "handlerfavorites.payload": {
            "type": "object",
            "properties": {
                "billable": {
                    "type": "boolean",
                    "example": true
                },
                "description": {
                    "type": "string",
                    "example": "Very often used TE"
                },
                "project_id": {
                    "type": "integer",
                    "example": 222222
                },
                "tag_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    },
                    "example": [
                        100
                    ]
                },
                "task_id": {
                    "type": "integer",
                    "example": 333333
                },
                "workspace_id": {
                    "type": "integer",
                    "example": 111111
                }
            }
        },
        "handlergoals.APIResponse": {
            "type": "object",
            "properties": {
                "active": {
                    "type": "boolean"
                },
                "billable": {
                    "type": "boolean"
                },
                "comparison": {
                    "type": "string"
                },
                "creator_user_id": {
                    "type": "integer"
                },
                "creator_user_name": {
                    "type": "string"
                },
                "current_recurrence_end_date": {
                    "type": "string"
                },
                "current_recurrence_start_date": {
                    "type": "string"
                },
                "current_recurrence_tracked_seconds": {
                    "type": "integer"
                },
                "end_date": {
                    "type": "string"
                },
                "goal_id": {
                    "type": "integer"
                },
                "icon": {
                    "type": "string"
                },
                "last_completed_recurrence_end_date": {
                    "type": "string"
                },
                "last_notified_at": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "project_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "recurrence": {
                    "type": "string"
                },
                "start_date": {
                    "type": "string"
                },
                "status": {
                    "type": "string"
                },
                "streak": {
                    "type": "integer"
                },
                "tag_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "target_seconds": {
                    "type": "integer"
                },
                "task_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "team_goal": {
                    "type": "boolean"
                },
                "user_id": {
                    "type": "integer"
                },
                "user_name": {
                    "type": "string"
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "handlergoals.CreatePayload": {
            "type": "object",
            "properties": {
                "billable": {
                    "type": "boolean"
                },
                "comparison": {
                    "type": "string"
                },
                "end_date": {
                    "type": "string"
                },
                "icon": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "project_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "recurrence": {
                    "type": "string"
                },
                "start_date": {
                    "type": "string"
                },
                "tag_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "target_seconds": {
                    "type": "integer"
                },
                "task_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "user_id": {
                    "type": "integer"
                }
            }
        },
        "handlergoals.UpdatePayload": {
            "type": "object",
            "properties": {
                "active": {
                    "type": "boolean"
                },
                "comparison": {
                    "type": "string"
                },
                "end_date": {
                    "type": "string"
                },
                "icon": {
                    "type": "string"
                },
                "last_notified_at": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "target_seconds": {
                    "type": "integer"
                }
            }
        },
        "invitation.Info": {
            "type": "object",
            "properties": {
                "email": {
                    "type": "string"
                },
                "invitation_id": {
                    "type": "integer"
                },
                "invite_url": {
                    "type": "string"
                },
                "organization_id": {
                    "type": "integer"
                },
                "recipient_id": {
                    "type": "integer"
                },
                "sender_id": {
                    "type": "integer"
                },
                "workspaces": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/invitation.WorkspaceInfo"
                    }
                }
            }
        },
        "invitation.IntegrationData": {
            "type": "object",
            "properties": {
                "external_id": {
                    "type": "string"
                },
                "external_type": {
                    "type": "string"
                },
                "provider": {
                    "type": "string"
                }
            }
        },
        "invitation.Post": {
            "type": "object",
            "properties": {
                "emails": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "groups": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "project_invite": {
                    "$ref": "#/definitions/invitation.ProjectInvite"
                },
                "skip_email": {
                    "type": "boolean"
                },
                "workspaces": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/invitation.PostWorkspaces"
                    }
                }
            }
        },
        "invitation.PostWorkspaces": {
            "type": "object",
            "properties": {
                "admin": {
                    "type": "boolean"
                },
                "integration_data": {
                    "$ref": "#/definitions/invitation.IntegrationData"
                },
                "role": {
                    "type": "string"
                },
                "role_id": {
                    "type": "integer"
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "invitation.ProjectInvite": {
            "type": "object",
            "properties": {
                "manager": {
                    "type": "boolean"
                },
                "project_id": {
                    "type": "integer"
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "invitation.Result": {
            "type": "object",
            "properties": {
                "data": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/invitation.Info"
                    }
                },
                "invitations": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Invitation"
                    }
                },
                "messages": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            }
        },
        "invitation.WorkspaceInfo": {
            "type": "object",
            "properties": {
                "user_id": {
                    "type": "integer"
                },
                "workspace_id": {
                    "type": "integer"
                },
                "workspace_user_id": {
                    "type": "integer"
                }
            }
        },
        "me.Feature": {
            "type": "object",
            "properties": {
                "enabled": {
                    "type": "boolean"
                },
                "feature_id": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                }
            }
        },
        "me.GetQuotaResult": {
            "type": "object",
            "properties": {
                "organization_id": {
                    "description": "ID of the organization for which the quota is reported. If null, represents the quota for requests\nthat do not belong to any organization, such as the /me endpoints.",
                    "type": "integer"
                },
                "remaining": {
                    "description": "Number of API calls remaining for the current window. Once this value reaches zero, no further\nrequests will be accepted until the window resets. While the quota is not enforced, this value may\ngo negative, indicating how much the user has exceeded the limit.",
                    "type": "integer"
                },
                "resets_in_secs": {
                    "description": "Time until the window resets, in seconds. Once this value reaches zero, the window is reset and\nmore requests will be accepted again.",
                    "type": "integer"
                },
                "total": {
                    "description": "Total number of API calls allowed for the current window. This value depends on the organization's plan.",
                    "type": "integer"
                }
            }
        },
        "me.UserLocationResponse": {
            "type": "object",
            "properties": {
                "city": {
                    "type": "string"
                },
                "city_lat_long": {
                    "type": "string"
                },
                "country_code": {
                    "type": "string"
                },
                "country_name": {
                    "type": "string"
                },
                "state": {
                    "type": "string"
                }
            }
        },
        "me.Workspace": {
            "type": "object",
            "properties": {
                "features": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/me.Feature"
                    }
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "me.payload": {
            "type": "object",
            "properties": {
                "beginning_of_week": {
                    "description": "User's first day of the week. Sunday: 0, Monday:1, etc.",
                    "type": "integer"
                },
                "country_id": {
                    "description": "User's country ID",
                    "type": "integer"
                },
                "current_password": {
                    "description": "User's current password (used to change the current password)",
                    "type": "string"
                },
                "default_workspace_id": {
                    "description": "User's default workspace ID",
                    "type": "integer"
                },
                "email": {
                    "description": "User's email address",
                    "type": "string",
                    "format": "email"
                },
                "fullname": {
                    "description": "User's full name",
                    "type": "string"
                },
                "password": {
                    "description": "User's new password (current one must also be provided)",
                    "type": "string"
                },
                "timezone": {
                    "description": "User's timezone",
                    "type": "string"
                }
            }
        },
        "models.AlertError": {
            "type": "object",
            "properties": {
                "code": {
                    "type": "string"
                },
                "message": {
                    "type": "string"
                }
            }
        },
        "models.AlertWithMeta": {
            "type": "object",
            "properties": {
                "billable": {
                    "type": "boolean"
                },
                "client_id": {
                    "type": "integer"
                },
                "client_name": {
                    "type": "string"
                },
                "errors": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.AlertError"
                    }
                },
                "estimatedHours": {
                    "type": "integer"
                },
                "id": {
                    "type": "integer"
                },
                "isFixedFee": {
                    "type": "boolean"
                },
                "isPrivate": {
                    "type": "boolean"
                },
                "object_type": {
                    "type": "integer"
                },
                "project_color": {
                    "type": "string"
                },
                "project_id": {
                    "type": "integer"
                },
                "project_name": {
                    "type": "string"
                },
                "receiver_groups": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "receiver_roles": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "receiver_users": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "receiver_users_name": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "receivers": {
                    "type": "integer"
                },
                "source_kind": {
                    "type": "string"
                },
                "threshold": {
                    "type": "integer"
                },
                "threshold_type": {
                    "type": "string"
                },
                "thresholds": {
                    "description": "using pq types is a workaround to enable reading postgres arrays into go types\nwe should wrap these pq types to avoid polluting our domain",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "wid": {
                    "type": "integer"
                }
            }
        },
        "models.AllPreferences": {
            "type": "object",
            "properties": {
                "activity_timeline_display_activity": {
                    "type": "boolean"
                },
                "activity_timeline_grouping_interval": {
                    "type": "string"
                },
                "activity_timeline_grouping_method": {
                    "type": "string"
                },
                "activity_timeline_recording_level": {
                    "type": "string"
                },
                "activity_timeline_sync_events": {
                    "type": "boolean"
                },
                "alpha_features": {
                    "description": "will be omitted if empty",
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.AlphaFeature"
                    }
                },
                "analyticsAdvancedFilters": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "auto_tracker_delay_enabled": {
                    "type": "boolean"
                },
                "auto_tracker_delay_in_seconds": {
                    "type": "integer"
                },
                "auto_tracker_stop_on_no_rule_match_enabled": {
                    "type": "boolean"
                },
                "automatic_tagging": {
                    "type": "boolean"
                },
                "autotracking_enabled": {
                    "type": "boolean"
                },
                "beginningOfWeek": {
                    "description": "will be omitted if empty",
                    "type": "integer"
                },
                "calendar_snap_duration": {
                    "type": "string"
                },
                "calendar_snap_initial_location": {
                    "type": "string"
                },
                "calendar_visible_hours_end": {
                    "type": "integer"
                },
                "calendar_visible_hours_start": {
                    "type": "integer"
                },
                "calendar_zoom_level": {
                    "type": "string"
                },
                "cell_swipe_actions_enabled": {
                    "type": "boolean"
                },
                "charts_view_type": {
                    "type": "string"
                },
                "collapseDetailedReportEntries": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "collapseTimeEntries": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "dashboards_view_type": {
                    "type": "string"
                },
                "date_format": {
                    "type": "string"
                },
                "decimal_separator": {
                    "description": "will be omitted if empty",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.DecimalSeparator"
                        }
                    ]
                },
                "default_project_id": {
                    "type": "integer"
                },
                "default_project_task": {
                    "$ref": "#/definitions/utils.DefaultProjectTask"
                },
                "default_task_id": {
                    "type": "integer"
                },
                "displayDensity": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "distinctRates": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "duration_format": {
                    "type": "string"
                },
                "duration_format_on_timer_duration_field": {
                    "type": "boolean"
                },
                "edit_popup_integration_timer": {
                    "type": "boolean"
                },
                "extension_send_error_reports": {
                    "type": "boolean"
                },
                "extension_send_usage_statistics": {
                    "type": "boolean"
                },
                "firstSeenBusinessPromo": {
                    "description": "will be omitted if empty",
                    "type": "integer"
                },
                "focus_app_on_time_entry_started": {
                    "type": "boolean"
                },
                "focus_app_on_time_entry_stopped": {
                    "type": "boolean"
                },
                "haptic_feedback_enabled": {
                    "type": "boolean"
                },
                "hide_keyboard_shortcut": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "hide_sidebar_right": {
                    "type": "boolean"
                },
                "idle_detection_enabled": {
                    "type": "boolean"
                },
                "idle_detection_interval_in_minutes": {
                    "type": "integer"
                },
                "inactivity_behavior": {
                    "type": "string"
                },
                "ios_is_goals_view_shown": {
                    "type": "boolean"
                },
                "is_goals_view_expanded": {
                    "type": "boolean"
                },
                "is_goals_view_shown": {
                    "type": "boolean"
                },
                "is_summary_total_view_visible": {
                    "type": "boolean"
                },
                "keep_mini_timer_on_top": {
                    "type": "boolean"
                },
                "keep_window_on_top": {
                    "type": "boolean"
                },
                "keyboard_increment_timer_page": {
                    "type": "integer"
                },
                "keyboard_shortcuts_enabled": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "keyboard_shortcuts_share_time_entries": {
                    "type": "boolean"
                },
                "mac_is_goals_view_shown": {
                    "type": "boolean"
                },
                "macos_auto_tracking_rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/utils.MacOSAutoTracking"
                    }
                },
                "macos_show_hide_toggl_keyboard_shortcut": {
                    "$ref": "#/definitions/utils.KeyboardShortcut"
                },
                "macos_stop_continue_keyboard_shortcut": {
                    "$ref": "#/definitions/utils.KeyboardShortcut"
                },
                "manualEntryMode": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "manualMode": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "manualModeOverlaySeen": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "modify_on_start_time_change": {
                    "type": "string"
                },
                "offlineMode": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "pg_time_zone_name": {
                    "type": "string"
                },
                "pomodoro_auto_start_break": {
                    "type": "boolean"
                },
                "pomodoro_auto_start_focus": {
                    "type": "boolean"
                },
                "pomodoro_break_interval_in_minutes": {
                    "type": "integer"
                },
                "pomodoro_break_project": {
                    "$ref": "#/definitions/utils.EntityWorkspace"
                },
                "pomodoro_break_project_id": {
                    "type": "integer"
                },
                "pomodoro_break_start_sound_enabled": {
                    "type": "boolean"
                },
                "pomodoro_break_tag": {
                    "$ref": "#/definitions/utils.EntityWorkspace"
                },
                "pomodoro_break_tag_id": {
                    "type": "integer"
                },
                "pomodoro_countdown_timer": {
                    "type": "boolean"
                },
                "pomodoro_enabled": {
                    "type": "boolean"
                },
                "pomodoro_focus_interval_in_minutes": {
                    "type": "integer"
                },
                "pomodoro_focus_sound": {
                    "type": "string"
                },
                "pomodoro_global_sound_enabled": {
                    "type": "boolean"
                },
                "pomodoro_interval_end_sound": {
                    "type": "boolean"
                },
                "pomodoro_interval_end_volume": {
                    "type": "integer"
                },
                "pomodoro_longer_break_duration_in_minutes": {
                    "type": "integer"
                },
                "pomodoro_prevent_screen_lock": {
                    "type": "boolean"
                },
                "pomodoro_rounds_before_longer_break": {
                    "type": "integer"
                },
                "pomodoro_session_start_sound_enabled": {
                    "type": "boolean"
                },
                "pomodoro_show_notifications": {
                    "type": "boolean"
                },
                "pomodoro_stop_timer_at_interval_end": {
                    "type": "boolean"
                },
                "pomodoro_track_breaks_as_time_entries": {
                    "type": "boolean"
                },
                "projectDashboardActivityMode": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "project_shortcut_enabled": {
                    "type": "boolean"
                },
                "record_timeline": {
                    "type": "boolean"
                },
                "remember_last_project": {
                    "type": "string"
                },
                "reminder_days": {
                    "type": "string"
                },
                "reminder_enabled": {
                    "type": "boolean"
                },
                "reminder_interval_in_minutes": {
                    "type": "integer"
                },
                "reminder_period": {
                    "type": "string"
                },
                "reminder_snoozing_in_minutes": {
                    "type": "integer"
                },
                "reportRounding": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "reportRoundingDirection": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "reportRoundingStepInMinutes": {
                    "description": "will be omitted if empty",
                    "type": "integer"
                },
                "reportsHideWeekends": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "run_app_on_startup": {
                    "type": "boolean"
                },
                "running_entry_warning": {
                    "type": "string"
                },
                "running_timer_notification_enabled": {
                    "type": "boolean"
                },
                "seenFollowModal": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "seenFooterPopup": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "seenProjectDashboardOverlay": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "seenTogglButtonModal": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "send_added_to_project_notification": {
                    "type": "boolean"
                },
                "send_daily_project_invites": {
                    "type": "boolean"
                },
                "send_product_emails": {
                    "type": "boolean"
                },
                "send_product_release_notification": {
                    "type": "boolean"
                },
                "send_system_message_notification": {
                    "type": "boolean"
                },
                "send_timer_notifications": {
                    "type": "boolean"
                },
                "send_weekly_report": {
                    "type": "boolean"
                },
                "sharing_shortcut_enabled": {
                    "type": "boolean"
                },
                "showTimeInTitle": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "show_all_entries": {
                    "type": "boolean"
                },
                "show_changelog": {
                    "type": "boolean"
                },
                "show_description_in_menu_bar": {
                    "type": "boolean"
                },
                "show_dock_icon": {
                    "type": "boolean"
                },
                "show_events_in_calendar": {
                    "type": "boolean"
                },
                "show_project_in_menu_bar": {
                    "type": "boolean"
                },
                "show_qr_scanner": {
                    "type": "boolean"
                },
                "show_seconds_in_menu_bar": {
                    "type": "boolean"
                },
                "show_timeline_in_day_view": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "show_timer_in_menu_bar": {
                    "type": "boolean"
                },
                "show_today_total_in_menu_bar": {
                    "type": "boolean"
                },
                "show_total_billable_hours": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "show_weekend_on_timer_page": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "show_workouts_in_calendar": {
                    "type": "boolean"
                },
                "sleep_behaviour": {
                    "type": "string"
                },
                "smart_alerts_option": {
                    "type": "string"
                },
                "snowballReportRounding": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "stack_times_on_manual_mode_after": {
                    "type": "string"
                },
                "start_automatically": {
                    "type": "boolean"
                },
                "start_shortcut_mode": {
                    "type": "string"
                },
                "stop_at_specific_time": {
                    "type": "boolean"
                },
                "stop_automatically": {
                    "type": "boolean"
                },
                "stop_entry_on_shutdown": {
                    "type": "boolean"
                },
                "stop_specified_time": {
                    "type": "string"
                },
                "stopped_timer_notification_enabled": {
                    "type": "boolean"
                },
                "suggestions_enabled": {
                    "type": "boolean"
                },
                "summaryReportAmounts": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "summaryReportDistinctRates": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "summaryReportGrouping": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "summaryReportSortAsc": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "summaryReportSortField": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "summaryReportSubGrouping": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "summary_total_mode": {
                    "type": "string"
                },
                "tags_shortcut_enabled": {
                    "type": "boolean"
                },
                "time_entry_display_mode": {
                    "type": "string"
                },
                "time_entry_ghost_suggestions_enabled": {
                    "type": "boolean"
                },
                "time_entry_invitations_notification_enabled": {
                    "type": "boolean"
                },
                "time_entry_start_stop_input_mode": {
                    "type": "string"
                },
                "timeofday_format": {
                    "type": "string"
                },
                "timerView": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "timerViewMobile": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "toSAcceptNeeded": {
                    "description": "ToSAcceptNeeded represents the trigger for new ToS accept dialog",
                    "type": "boolean"
                },
                "use_mini_timer": {
                    "type": "boolean"
                },
                "visibleFooter": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "webTimeEntryStarted": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "webTimeEntryStopped": {
                    "description": "will be omitted if empty",
                    "type": "boolean"
                },
                "weeklyReportGrouping": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "weeklyReportValueToShow": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "windows_auto_tracking_rules": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/utils.WindowsAutoTracking"
                    }
                },
                "windows_show_hide_toggl_keyboard_shortcut": {
                    "$ref": "#/definitions/utils.KeyboardShortcut"
                },
                "windows_stop_continue_keyboard_shortcut": {
                    "$ref": "#/definitions/utils.KeyboardShortcut"
                },
                "windows_stop_start_keyboard_shortcut": {
                    "$ref": "#/definitions/utils.KeyboardShortcut"
                },
                "windows_theme": {
                    "type": "string"
                },
                "workout_default_project": {
                    "$ref": "#/definitions/utils.EntityWorkspace"
                },
                "workout_default_project_id": {
                    "type": "integer"
                },
                "workout_default_tag": {
                    "$ref": "#/definitions/utils.EntityWorkspace"
                },
                "workout_default_tag_id": {
                    "type": "integer"
                }
            }
        },
        "models.AlphaFeature": {
            "type": "object",
            "properties": {
                "alpha_feature_id": {
                    "description": "Feature ID",
                    "type": "integer"
                },
                "code": {
                    "description": "Feature code",
                    "type": "string"
                },
                "deleted_at": {
                    "description": "Time of deletion, omitted if empty",
                    "type": "string"
                },
                "description": {
                    "description": "Feature description, omitted if empty",
                    "type": "string"
                },
                "enabled": {
                    "description": "Whether the feature is enabled",
                    "type": "boolean"
                },
                "product_id": {
                    "description": "Product ID for which this Feature belong",
                    "type": "integer"
                }
            }
        },
        "models.Avatar": {
            "type": "object",
            "properties": {
                "avatar_urls": {
                    "$ref": "#/definitions/models.ImageURLs"
                },
                "fileType": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            }
        },
        "models.Campaign": {
            "type": "object",
            "properties": {
                "discount": {
                    "type": "integer"
                },
                "end": {
                    "type": "string"
                },
                "key": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "start": {
                    "type": "string"
                }
            }
        },
        "models.CardDetails": {
            "type": "object",
            "properties": {
                "added_at": {
                    "type": "string"
                },
                "card_number": {
                    "type": "string"
                },
                "card_type": {
                    "type": "string"
                },
                "creator_id": {
                    "type": "integer"
                },
                "creator_name": {
                    "type": "string"
                },
                "expiry_date": {
                    "type": "string"
                },
                "holder_name": {
                    "type": "string"
                }
            }
        },
        "models.Client": {
            "type": "object",
            "properties": {
                "archived": {
                    "description": "IsArchived is true if the client is archived",
                    "type": "boolean"
                },
                "at": {
                    "description": "When was the last update",
                    "type": "string"
                },
                "creator_id": {
                    "description": "CreatorID is the ID of the user who created the client",
                    "type": "integer"
                },
                "external_reference": {
                    "description": "ExternalReference can be used to store an external reference to the Track Client entity.",
                    "type": "string"
                },
                "id": {
                    "description": "Client ID",
                    "type": "integer"
                },
                "integration_ext_id": {
                    "description": "The external ID of the linked entity in the external system (e.g. JIRA/SalesForce)",
                    "type": "string"
                },
                "integration_ext_type": {
                    "description": "The external type of the linked entity in the external system (e.g. JIRA/SalesForce)",
                    "type": "string"
                },
                "integration_provider": {
                    "description": "The provider (e.g. JIRA/SalesForce) that has an entity linked to this Toggl Track entity",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.IntegrationProvider"
                        }
                    ]
                },
                "name": {
                    "description": "Name of the client",
                    "type": "string"
                },
                "notes": {
                    "type": "string"
                },
                "permissions": {
                    "description": "List of authorization permissions for this client.",
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "total_count": {
                    "description": "Total field to store the total count",
                    "type": "integer"
                },
                "wid": {
                    "description": "Workspace ID",
                    "type": "integer"
                }
            }
        },
        "models.ContactDetail": {
            "type": "object",
            "properties": {
                "company_address": {
                    "type": "string"
                },
                "company_city": {
                    "type": "string"
                },
                "company_name": {
                    "type": "string"
                },
                "contact_detail_id": {
                    "type": "integer"
                },
                "contact_email": {
                    "type": "string"
                },
                "contact_person": {
                    "type": "string"
                },
                "country_id": {
                    "type": "integer"
                },
                "country_subdivision_id": {
                    "type": "integer"
                },
                "created_at": {
                    "type": "string"
                },
                "customer_id": {
                    "type": "integer"
                },
                "is_eu_resident": {
                    "type": "boolean"
                },
                "updated_at": {
                    "type": "string"
                },
                "user_id": {
                    "type": "integer"
                },
                "vat_number": {
                    "type": "string"
                },
                "vat_number_valid": {
                    "description": "DEPRECATED",
                    "type": "boolean"
                },
                "vat_number_validated_at": {
                    "description": "DEPRECATED",
                    "type": "string"
                },
                "zip_code": {
                    "type": "string"
                }
            }
        },
        "models.Country": {
            "type": "object",
            "properties": {
                "country_code": {
                    "type": "string"
                },
                "default_currency_id": {
                    "type": "integer"
                },
                "id": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                },
                "requires_postal_code": {
                    "type": "boolean"
                },
                "vat_applicable": {
                    "type": "boolean"
                },
                "vat_percentage": {
                    "type": "number"
                },
                "vat_regex": {
                    "type": "string"
                }
            }
        },
        "models.CsvUpload": {
            "type": "object",
            "properties": {
                "at": {
                    "type": "string"
                },
                "log_id": {
                    "type": "integer"
                }
            }
        },
        "models.Currency": {
            "type": "object",
            "properties": {
                "currency_id": {
                    "type": "integer",
                    "example": 0
                },
                "iso_code": {
                    "type": "string",
                    "example": "EUR"
                },
                "symbol": {
                    "type": "string",
                    "example": "€"
                }
            }
        },
        "models.DataRetentionDays": {
            "type": "integer",
            "enum": [
                0,
                0
            ],
            "x-enum-varnames": [
                "FreeDataRetentionPeriodDays",
                "PaidDataRetentionPeriodDays"
            ]
        },
        "models.DecimalSeparator": {
            "type": "string",
            "enum": [
                ",",
                "."
            ],
            "x-enum-varnames": [
                "Comma",
                "Point"
            ]
        },
        "models.DiscountRequestResponses": {
            "type": "object",
            "required": [
                "negative_answers",
                "positive_answers"
            ],
            "properties": {
                "negative_answers": {
                    "type": "array",
                    "minItems": 1,
                    "items": {
                        "type": "string"
                    }
                },
                "negative_feedback": {
                    "type": "string"
                },
                "positive_answers": {
                    "type": "array",
                    "minItems": 1,
                    "items": {
                        "type": "string"
                    }
                },
                "positive_feedback": {
                    "type": "string"
                }
            }
        },
        "models.DownloadRequestRecord": {
            "type": "object",
            "properties": {
                "error_message": {
                    "type": "string"
                },
                "state": {
                    "type": "string"
                },
                "token": {
                    "type": "string"
                }
            }
        },
        "models.Favorite": {
            "type": "object",
            "properties": {
                "billable": {
                    "type": "boolean"
                },
                "client_name": {
                    "description": "Related entities meta fields - if requested",
                    "type": "string"
                },
                "created_at": {
                    "type": "string"
                },
                "deleted_at": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "favorite_id": {
                    "type": "integer"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "project_active": {
                    "type": "boolean"
                },
                "project_billable": {
                    "type": "boolean"
                },
                "project_color": {
                    "type": "string"
                },
                "project_id": {
                    "type": "integer"
                },
                "project_name": {
                    "type": "string"
                },
                "project_private": {
                    "type": "boolean"
                },
                "public": {
                    "type": "boolean"
                },
                "rank": {
                    "type": "integer"
                },
                "tag_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "task_id": {
                    "type": "integer"
                },
                "task_name": {
                    "type": "string"
                },
                "user_id": {
                    "type": "integer"
                },
                "was_public_at": {
                    "type": "string"
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "models.Goal": {
            "type": "object",
            "properties": {
                "active": {
                    "type": "boolean"
                },
                "billable": {
                    "type": "boolean"
                },
                "comparison": {
                    "type": "string"
                },
                "creatorUserID": {
                    "type": "integer"
                },
                "creatorUserName": {
                    "type": "string"
                },
                "currentRecurrenceEndDate": {
                    "type": "string"
                },
                "currentRecurrenceStartDate": {
                    "type": "string"
                },
                "currentRecurrenceTrackedSeconds": {
                    "type": "integer"
                },
                "deletedAt": {
                    "type": "string"
                },
                "endDate": {
                    "type": "string"
                },
                "icon": {
                    "type": "string"
                },
                "id": {
                    "type": "integer"
                },
                "lastCompletedRecurrenceEndDate": {
                    "type": "string"
                },
                "lastNotifiedAt": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "previousStreak": {
                    "type": "integer"
                },
                "projectIDs": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "recurrence": {
                    "type": "string"
                },
                "startDate": {
                    "type": "string"
                },
                "status": {
                    "type": "string"
                },
                "streak": {
                    "type": "integer"
                },
                "streakConsolidatedAt": {
                    "type": "string"
                },
                "tagIDs": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "targetSeconds": {
                    "type": "integer"
                },
                "taskIDs": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "teamGoal": {
                    "type": "boolean"
                },
                "userID": {
                    "type": "integer"
                },
                "userName": {
                    "type": "string"
                },
                "workspaceID": {
                    "type": "integer"
                }
            }
        },
        "models.GroupDict": {
            "type": "object",
            "properties": {
                "group_id": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                }
            }
        },
        "models.ImageURLs": {
            "type": "object",
            "additionalProperties": {
                "type": "string"
            }
        },
        "models.IntegrationProvider": {
            "type": "string",
            "enum": [
                "asana",
                "jira",
                "salesforce"
            ],
            "x-enum-varnames": [
                "AsanaProvider",
                "JIRAProvider",
                "SalesForceProvider"
            ]
        },
        "models.Logo": {
            "type": "object",
            "properties": {
                "logo": {
                    "type": "string"
                }
            }
        },
        "models.MeOrganization": {
            "type": "object",
            "properties": {
                "admin": {
                    "description": "Whether the requester is an admin of the organization",
                    "type": "boolean"
                },
                "at": {
                    "description": "Organization's last modification date",
                    "type": "string",
                    "format": "date-time"
                },
                "created_at": {
                    "description": "Organization's creation date",
                    "type": "string",
                    "format": "date-time"
                },
                "id": {
                    "description": "Organization ID",
                    "type": "integer"
                },
                "is_multi_workspace_enabled": {
                    "description": "Is true when the organization option is_multi_workspace_enabled is set",
                    "type": "boolean"
                },
                "is_unified": {
                    "description": "Deprecated: use Subscription instead; all orgs with an active subscription are unified.",
                    "type": "boolean"
                },
                "max_data_retention_days": {
                    "description": "How far back free workspaces in this org can access data.",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.DataRetentionDays"
                        }
                    ]
                },
                "max_workspaces": {
                    "description": "Maximum number of workspaces allowed for the organization",
                    "type": "integer"
                },
                "name": {
                    "description": "Organization Name",
                    "type": "string"
                },
                "owner": {
                    "description": "Whether the requester is a the owner of the organization",
                    "type": "boolean"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "pricing_plan_enterprise": {
                    "description": "Deprecated: use Subscription.Enterprise instead.",
                    "type": "boolean"
                },
                "pricing_plan_id": {
                    "description": "Deprecated: use Subscription.Plan instead.",
                    "type": "integer"
                },
                "pricing_plan_name": {
                    "description": "Deprecated: use Subscription.PlanName instead.",
                    "type": "string"
                },
                "subscription": {
                    "$ref": "#/definitions/models.OrgSubscription"
                },
                "suspended_at": {
                    "description": "Whether the organization is currently suspended",
                    "type": "string"
                },
                "trial_info": {
                    "description": "Deprecated: use Subscription.Trial instead.",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.TrialInfo"
                        }
                    ]
                },
                "user_count": {
                    "description": "Number of organization users",
                    "type": "integer"
                }
            }
        },
        "models.MostActiveUser": {
            "type": "object",
            "properties": {
                "avatar_file_name": {
                    "type": "string"
                },
                "duration": {
                    "type": "integer"
                },
                "email": {
                    "type": "string"
                },
                "fullname": {
                    "type": "string"
                },
                "user_id": {
                    "type": "integer"
                }
            }
        },
        "models.Options": {
            "type": "object",
            "additionalProperties": {
                "type": "string"
            }
        },
        "models.OrgSubscription": {
            "type": "object",
            "properties": {
                "billing_period_months": {
                    "description": "Billing period in months (1 = monthly, 12 = yearly, 0 for free)",
                    "type": "integer"
                },
                "cancel_date": {
                    "description": "Date when the subscription is scheduled to be canceled (nil if not canceled)",
                    "type": "string",
                    "x-nullable": true
                },
                "created_at": {
                    "description": "When the subscription was originally created (nil for free orgs)",
                    "type": "string",
                    "x-nullable": true
                },
                "current_period_ends_at": {
                    "description": "End of the current billing period (nil for free orgs)",
                    "type": "string",
                    "x-nullable": true
                },
                "current_period_starts_at": {
                    "description": "Start of the current billing period (nil for free orgs)",
                    "type": "string",
                    "x-nullable": true
                },
                "enterprise": {
                    "description": "Whether this is an enterprise plan",
                    "type": "boolean"
                },
                "plan": {
                    "description": "The product handle (e.g. \"free\", \"starter\", \"premium\", \"enterprise\")",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.ProductHandle"
                        }
                    ]
                },
                "plan_name": {
                    "description": "Human-readable plan name (e.g. \"Free\", \"Starter\", \"Premium\")",
                    "type": "string"
                },
                "seats": {
                    "description": "Number of seats in the subscription",
                    "type": "integer",
                    "x-nullable": true
                },
                "state": {
                    "description": "Subscription state (e.g. \"free\", \"active\", \"trialing\", \"past_due\", \"canceled\")",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.OrgSubscriptionState"
                        }
                    ]
                },
                "trial": {
                    "description": "Trial information",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.OrgSubscriptionTrial"
                        }
                    ]
                }
            }
        },
        "models.OrgSubscriptionState": {
            "type": "string",
            "enum": [
                "incomplete",
                "incomplete_expired",
                "trialing",
                "active",
                "past_due",
                "canceled",
                "unpaid",
                "free"
            ],
            "x-enum-varnames": [
                "OrgSubscriptionStateFree"
            ]
        },
        "models.OrgSubscriptionTrial": {
            "type": "object",
            "properties": {
                "active": {
                    "description": "Whether the organization is currently on a trial",
                    "type": "boolean"
                },
                "available": {
                    "description": "Whether a trial is available for this organization/owner",
                    "type": "boolean"
                },
                "end_date": {
                    "description": "When the trial ends (nil if no trial)",
                    "type": "string",
                    "x-nullable": true
                },
                "plan": {
                    "description": "The plan handle of the trial (nil if no trial)",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.ProductHandle"
                        }
                    ],
                    "x-nullable": true
                },
                "start_date": {
                    "description": "When the trial started (nil if no trial)",
                    "type": "string",
                    "x-nullable": true
                }
            }
        },
        "models.OrgUser": {
            "type": "object",
            "properties": {
                "2fa_enabled": {
                    "type": "boolean"
                },
                "admin": {
                    "description": "Deprecated, to be removed. Use RoleID, or IsAdmin method if you must access this field.",
                    "type": "boolean"
                },
                "avatar_url": {
                    "type": "string"
                },
                "can_edit_email": {
                    "type": "boolean"
                },
                "email": {
                    "type": "string"
                },
                "groups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.GroupDict"
                    }
                },
                "id": {
                    "type": "integer"
                },
                "inactive": {
                    "type": "boolean"
                },
                "invitation_id": {
                    "type": "integer"
                },
                "joined": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "organization_id": {
                    "type": "integer"
                },
                "owner": {
                    "description": "Deprecated, to be removed. Use RoleID, or IsOwner method if you must access this field.",
                    "type": "boolean"
                },
                "role_id": {
                    "type": "integer"
                },
                "user_id": {
                    "type": "integer"
                },
                "workspace_count": {
                    "type": "integer"
                },
                "workspaces": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.OrgUserWorkspace"
                    }
                }
            }
        },
        "models.OrgUserWorkspace": {
            "type": "object",
            "properties": {
                "active": {
                    "type": "boolean"
                },
                "admin": {
                    "description": "Deprecated, to be removed.  Use RoleID, or IsAdmin method if you must access this field.",
                    "type": "boolean"
                },
                "cost": {
                    "type": "number"
                },
                "default_currency": {
                    "type": "string"
                },
                "groups": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.GroupDict"
                    }
                },
                "inactive": {
                    "type": "boolean"
                },
                "rate": {
                    "type": "number"
                },
                "role": {
                    "description": "Deprecated, to be removed",
                    "type": "string"
                },
                "role_id": {
                    "type": "integer"
                },
                "view_edit_billable_rates": {
                    "type": "boolean"
                },
                "view_edit_labor_costs": {
                    "type": "boolean"
                },
                "working_hours": {
                    "type": "number"
                },
                "workspace_id": {
                    "type": "integer"
                },
                "workspace_name": {
                    "type": "string"
                },
                "workspace_user_id": {
                    "type": "integer"
                }
            }
        },
        "models.OrganizationSegmentation": {
            "type": "object",
            "properties": {
                "demo_requested": {
                    "type": "boolean"
                },
                "full_name": {
                    "type": "string"
                },
                "heard": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "industries": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "members_range": {
                    "type": "string"
                },
                "organization_id": {
                    "type": "integer"
                },
                "reasons": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "skipped_step": {
                    "type": "string"
                },
                "user_id": {
                    "type": "integer"
                },
                "user_segments": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            }
        },
        "models.PaymentDetail": {
            "type": "object",
            "properties": {
                "created_at": {
                    "type": "string"
                },
                "currency": {
                    "type": "string"
                },
                "customer_id": {
                    "type": "integer"
                },
                "payment_type": {
                    "type": "string"
                },
                "reference": {
                    "type": "string"
                },
                "user_id": {
                    "type": "integer"
                }
            }
        },
        "models.PaymentFailedResponse": {
            "type": "object",
            "properties": {
                "code": {
                    "type": "string"
                },
                "decline_code": {
                    "type": "string"
                },
                "doc_url": {
                    "type": "string"
                },
                "invoice_total_amount": {
                    "type": "integer"
                },
                "message": {
                    "type": "string"
                },
                "next_payment_attempt": {
                    "type": "string"
                },
                "organization_id": {
                    "type": "integer"
                }
            }
        },
        "models.PaymentInfo": {
            "type": "object",
            "properties": {
                "created_at": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "id": {
                    "type": "integer"
                },
                "status": {
                    "type": "string"
                }
            }
        },
        "models.Period": {
            "type": "object",
            "properties": {
                "created_at": {
                    "type": "string"
                },
                "finished_on": {
                    "type": "string"
                },
                "started_on": {
                    "type": "string"
                },
                "subscription_id": {
                    "type": "integer"
                },
                "subscription_period_id": {
                    "type": "integer"
                },
                "trial": {
                    "type": "boolean"
                },
                "user_count": {
                    "type": "integer"
                }
            }
        },
        "models.PlanWithFeatures": {
            "type": "object",
            "properties": {
                "active_at": {
                    "type": "string"
                },
                "features": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.PlanFeature"
                    }
                },
                "inactive_at": {
                    "type": "string"
                },
                "max_user_count": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                },
                "plan_at": {
                    "type": "string"
                },
                "plan_id": {
                    "type": "integer"
                },
                "prices": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.PricingPlan"
                    }
                },
                "product_handle": {
                    "type": "string"
                },
                "toggl_product_name": {
                    "type": "string"
                }
            }
        },
        "models.PostPayload": {
            "type": "object",
            "properties": {
                "name": {
                    "description": "Name of the organization",
                    "type": "string"
                },
                "workspace_name": {
                    "description": "Name of the workspace",
                    "type": "string"
                }
            }
        },
        "models.PricingPlan": {
            "type": "object",
            "properties": {
                "amount_in_cents": {
                    "type": "integer"
                },
                "currency": {
                    "type": "string"
                },
                "period": {
                    "type": "integer"
                },
                "plan": {
                    "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Plan"
                },
                "plan_id": {
                    "type": "integer"
                },
                "price_point_handle": {
                    "type": "string"
                },
                "pricing_plan_id": {
                    "type": "integer"
                }
            }
        },
        "models.ProductHandle": {
            "type": "string",
            "enum": [
                "free",
                "starter",
                "premium",
                "enterprise"
            ],
            "x-enum-varnames": [
                "ProductHandleFree",
                "ProductHandleStarter",
                "ProductHandlePremium",
                "ProductHandleEnterprise"
            ]
        },
        "models.ProjectGroup": {
            "type": "object",
            "properties": {
                "group_id": {
                    "type": "integer"
                },
                "id": {
                    "type": "integer"
                },
                "pid": {
                    "type": "integer"
                },
                "wid": {
                    "type": "integer"
                }
            }
        },
        "models.ProjectStatistics": {
            "type": "object",
            "properties": {
                "earliest_time_entry": {
                    "type": "string"
                },
                "latest_time_entry": {
                    "type": "string"
                }
            }
        },
        "models.ProjectStatus": {
            "type": "string",
            "enum": [
                "upcoming",
                "active",
                "ended",
                "archived",
                "deleted"
            ],
            "x-enum-varnames": [
                "ProjectStatusUpcoming",
                "ProjectStatusActive",
                "ProjectStatusEnded",
                "ProjectStatusArchived",
                "ProjectStatusDeleted"
            ]
        },
        "models.ProjectUser": {
            "type": "object",
            "properties": {
                "at": {
                    "description": "When was last modified",
                    "type": "string"
                },
                "gid": {
                    "description": "Group ID, legacy field",
                    "type": "integer"
                },
                "group_id": {
                    "description": "Group ID",
                    "type": "integer"
                },
                "id": {
                    "description": "Project User ID",
                    "type": "integer"
                },
                "labor_cost": {
                    "description": "Custom labor cost for project user",
                    "type": "number",
                    "x-nullable": true
                },
                "labor_cost_last_updated": {
                    "description": "Date for labor cost last updated",
                    "type": "string"
                },
                "manager": {
                    "description": "Whether the user is manager of the project",
                    "type": "boolean"
                },
                "project_id": {
                    "description": "Project ID",
                    "type": "integer"
                },
                "rate": {
                    "description": "Custom rate for project user",
                    "type": "number",
                    "x-nullable": true
                },
                "rate_last_updated": {
                    "description": "Date for rate last updated",
                    "type": "string"
                },
                "user_id": {
                    "description": "User ID",
                    "type": "integer"
                },
                "workspace_id": {
                    "description": "Workspace ID",
                    "type": "integer"
                }
            }
        },
        "models.ProjectUserWithMeta": {
            "type": "object",
            "properties": {
                "at": {
                    "description": "When was last modified",
                    "type": "string"
                },
                "avatar_url": {
                    "type": "string"
                },
                "gid": {
                    "description": "Group ID, legacy field",
                    "type": "integer"
                },
                "group_id": {
                    "description": "Group ID",
                    "type": "integer"
                },
                "id": {
                    "description": "Project User ID",
                    "type": "integer"
                },
                "is_active": {
                    "type": "boolean"
                },
                "labor_cost": {
                    "description": "Custom labor cost for project user",
                    "type": "number",
                    "x-nullable": true
                },
                "labor_cost_last_updated": {
                    "description": "Date for labor cost last updated",
                    "type": "string"
                },
                "manager": {
                    "description": "Whether the user is manager of the project",
                    "type": "boolean"
                },
                "project_id": {
                    "description": "Project ID",
                    "type": "integer"
                },
                "rate": {
                    "description": "Custom rate for project user",
                    "type": "number",
                    "x-nullable": true
                },
                "rate_last_updated": {
                    "description": "Date for rate last updated",
                    "type": "string"
                },
                "user_id": {
                    "description": "User ID",
                    "type": "integer"
                },
                "user_name": {
                    "type": "string"
                },
                "workspace_id": {
                    "description": "Workspace ID",
                    "type": "integer"
                },
                "workspace_user_id": {
                    "type": "integer"
                },
                "workspace_user_labor_cost": {
                    "type": "number"
                },
                "workspace_user_rate": {
                    "type": "number"
                }
            }
        },
        "models.PutPayload": {
            "type": "object",
            "properties": {
                "name": {
                    "description": "Name of the organization",
                    "type": "string"
                }
            }
        },
        "models.Rate": {
            "type": "object",
            "properties": {
                "amount": {
                    "description": "Amount of the rate",
                    "type": "number"
                },
                "created_at": {
                    "description": "Creation date of the rate",
                    "type": "string"
                },
                "creator_id": {
                    "type": "integer"
                },
                "deleted_at": {
                    "description": "Deletion date of the rate, in case that is null it means the rates is active",
                    "type": "string"
                },
                "end": {
                    "description": "End date time of the rate",
                    "type": "string"
                },
                "id": {
                    "description": "Identifier of the rate",
                    "type": "integer"
                },
                "planned_task_id": {
                    "description": "Planned task ID which the rate is applied",
                    "type": "integer"
                },
                "project_id": {
                    "description": "Project ID which the rate is applied",
                    "type": "integer"
                },
                "project_user_id": {
                    "description": "Project user ID which the rate is applied",
                    "type": "integer"
                },
                "rate_change_mode": {
                    "$ref": "#/definitions/models.RateChangeMode"
                },
                "start": {
                    "description": "Start date time of the rate",
                    "type": "string"
                },
                "type": {
                    "$ref": "#/definitions/models.RateType"
                },
                "updated_at": {
                    "description": "Last update date of the rate",
                    "type": "string"
                },
                "workspace_id": {
                    "description": "Workspace ID which the rate is applied",
                    "type": "integer"
                },
                "workspace_user_id": {
                    "description": "Workspace user ID which the rate is applied",
                    "type": "integer"
                }
            }
        },
        "models.RateChangeMode": {
            "type": "string",
            "enum": [
                "override-all",
                "override-current",
                "start-today",
                "",
                "override-current"
            ],
            "x-enum-varnames": [
                "OverrideAll",
                "OverrideCurrent",
                "StartToday",
                "NoRateChange",
                "DefaultRateChangeMode"
            ]
        },
        "models.RateType": {
            "type": "string",
            "enum": [
                "billable_rates",
                "labor_costs"
            ],
            "x-enum-varnames": [
                "RateTypeBillable",
                "RateTypeLaborCost"
            ]
        },
        "models.RecurringPeriod": {
            "type": "object",
            "properties": {
                "end_date": {
                    "type": "string"
                },
                "start_date": {
                    "type": "string"
                }
            }
        },
        "models.RecurringProjectParameters": {
            "type": "object",
            "properties": {
                "custom_period": {
                    "description": "Custom period, used when \"period\" field is \"custom\"",
                    "type": "integer"
                },
                "estimated_seconds": {
                    "description": "Estimated seconds",
                    "type": "integer"
                },
                "parameter_end_date": {
                    "description": "Recurring end date",
                    "type": "string",
                    "x-nullable": true
                },
                "parameter_start_date": {
                    "description": "Recurring start date",
                    "type": "string"
                },
                "period": {
                    "description": "Period",
                    "type": "string"
                },
                "project_start_date": {
                    "description": "Project start date",
                    "type": "string"
                }
            }
        },
        "models.SSOInvitation": {
            "type": "object",
            "properties": {
                "accounts_signup_url": {
                    "description": "AccountsSignupURL is a legacy field, should be removed one more after\nthis issue gets done https://github.com/toggl/accounts-fe/issues/704",
                    "type": "string"
                },
                "code": {
                    "type": "string"
                },
                "email": {
                    "type": "string"
                },
                "organization_id": {
                    "type": "integer"
                },
                "organization_name": {
                    "type": "string"
                },
                "sender_email": {
                    "type": "string"
                },
                "sender_name": {
                    "type": "string"
                },
                "sso": {
                    "type": "boolean"
                },
                "token": {
                    "type": "string"
                }
            }
        },
        "models.SavedReport": {
            "type": "object",
            "properties": {
                "deleted_at": {
                    "type": "string"
                },
                "fixed_daterange": {
                    "type": "boolean"
                },
                "id": {
                    "type": "integer"
                },
                "isNAResource": {
                    "type": "boolean"
                },
                "is_commenting_enabled": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "params": {
                    "type": "string"
                },
                "public": {
                    "type": "boolean"
                },
                "scheduled_email_gids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "scheduled_email_uids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "token": {
                    "type": "string"
                },
                "uid": {
                    "type": "integer"
                },
                "updated_at": {
                    "type": "string"
                },
                "updated_by": {
                    "type": "integer"
                }
            }
        },
        "models.ScheduledReport": {
            "type": "object",
            "properties": {
                "bookmark_id": {
                    "type": "integer"
                },
                "created_at": {
                    "type": "string"
                },
                "creator_id": {
                    "type": "integer"
                },
                "deleted_at": {
                    "type": "string"
                },
                "frequency": {
                    "type": "integer"
                },
                "group_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "report_id": {
                    "type": "integer"
                },
                "user_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "models.SimpleWorkspaceUser": {
            "type": "object",
            "properties": {
                "email": {
                    "description": "Email of the user",
                    "type": "string"
                },
                "fullname": {
                    "description": "Name of the user",
                    "type": "string"
                },
                "id": {
                    "description": "Global user identifier",
                    "type": "integer"
                },
                "inactive": {
                    "description": "Inactive indicates if user is deactivated or not in the workspace",
                    "type": "boolean"
                },
                "is_active": {
                    "description": "IsActive indicates if user has joined the workspace",
                    "type": "boolean"
                },
                "is_admin": {
                    "description": "Flag indicating if user is admin\nDeprecated",
                    "type": "boolean"
                },
                "role": {
                    "description": "Role of the user",
                    "type": "string"
                }
            }
        },
        "models.Statistics": {
            "type": "object",
            "properties": {
                "admins": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.UserData"
                    }
                },
                "groups_count": {
                    "type": "integer"
                },
                "members_count": {
                    "type": "integer"
                }
            }
        },
        "models.Subdivision": {
            "type": "object",
            "properties": {
                "company_id": {
                    "type": "integer"
                },
                "country_id": {
                    "type": "integer"
                },
                "country_subdivision_id": {
                    "type": "integer"
                },
                "iso_code": {
                    "type": "string"
                },
                "name": {
                    "type": "string"
                }
            }
        },
        "models.Subscription": {
            "type": "object",
            "properties": {
                "auto_renew": {
                    "type": "boolean"
                },
                "card_details": {
                    "$ref": "#/definitions/models.CardDetails"
                },
                "company_id": {
                    "type": "integer"
                },
                "contact_detail": {
                    "$ref": "#/definitions/models.ContactDetail"
                },
                "created_at": {
                    "type": "string",
                    "format": "date-time"
                },
                "currency": {
                    "type": "string"
                },
                "customer_id": {
                    "type": "integer"
                },
                "deleted_at": {
                    "type": "string",
                    "format": "date-time"
                },
                "last_pricing_plan_id": {
                    "type": "integer"
                },
                "organization_id": {
                    "type": "integer"
                },
                "payment_details": {
                    "$ref": "#/definitions/models.PaymentDetail"
                },
                "pricing_plan_id": {
                    "type": "integer"
                },
                "renewal_at": {
                    "type": "string",
                    "format": "date-time"
                },
                "subscription_id": {
                    "type": "integer"
                },
                "subscription_period": {
                    "$ref": "#/definitions/models.Period"
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "models.Suggestion": {
            "type": "object",
            "properties": {
                "accuracy": {
                    "type": "number"
                },
                "billable": {
                    "type": "boolean"
                },
                "description_match": {
                    "type": "boolean"
                },
                "last_seen": {
                    "type": "string"
                },
                "project_active": {
                    "type": "boolean"
                },
                "project_color": {
                    "type": "string"
                },
                "project_id": {
                    "type": "integer"
                },
                "project_name": {
                    "type": "string"
                },
                "tag_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "tags": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "task_id": {
                    "type": "integer"
                },
                "task_name": {
                    "type": "string"
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "models.Tag": {
            "type": "object",
            "properties": {
                "at": {
                    "description": "When was created/last modified",
                    "type": "string"
                },
                "creator_id": {
                    "description": "CreatorID the user who created the tag",
                    "type": "integer"
                },
                "deleted_at": {
                    "description": "When was deleted",
                    "type": "string",
                    "format": "date-time"
                },
                "id": {
                    "description": "Tag ID",
                    "type": "integer"
                },
                "integration_ext_id": {
                    "description": "The external ID of the linked entity in the external system (e.g. JIRA/SalesForce)",
                    "type": "string"
                },
                "integration_ext_type": {
                    "description": "The external type of the linked entity in the external system (e.g. JIRA/SalesForce)",
                    "type": "string"
                },
                "integration_provider": {
                    "description": "The provider (e.g. JIRA/SalesForce) that has an entity linked to this Toggl Track entity",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.IntegrationProvider"
                        }
                    ]
                },
                "name": {
                    "description": "Tag name",
                    "type": "string"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "workspace_id": {
                    "description": "Workspace ID",
                    "type": "integer"
                }
            }
        },
        "models.Task": {
            "type": "object",
            "properties": {
                "active": {
                    "description": "False when the task has been done",
                    "type": "boolean"
                },
                "at": {
                    "description": "When the task was created/last modified",
                    "type": "string"
                },
                "avatar_url": {
                    "type": "string",
                    "x-nullable": true
                },
                "client_id": {
                    "type": "integer",
                    "x-nullable": true
                },
                "client_name": {
                    "type": "string",
                    "x-nullable": true
                },
                "estimated_seconds": {
                    "description": "Estimation time for this task in seconds",
                    "type": "integer",
                    "x-nullable": true
                },
                "external_reference": {
                    "description": "ExternalReference can be used to store an external reference to the Track Task Entity.",
                    "type": "string"
                },
                "id": {
                    "description": "Task ID",
                    "type": "integer"
                },
                "integration_ext_id": {
                    "description": "The external ID of the linked entity in the external system (e.g. JIRA/SalesForce)",
                    "type": "string"
                },
                "integration_ext_type": {
                    "description": "The external type of the linked entity in the external system (e.g. JIRA/SalesForce)",
                    "type": "string"
                },
                "integration_provider": {
                    "description": "The provider (e.g. JIRA/SalesForce) that has an entity linked to this Toggl Track entity",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.IntegrationProvider"
                        }
                    ]
                },
                "name": {
                    "description": "Task Name",
                    "type": "string"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "project_billable": {
                    "type": "boolean"
                },
                "project_color": {
                    "description": "Metadata",
                    "type": "string"
                },
                "project_id": {
                    "description": "Project ID",
                    "type": "integer"
                },
                "project_is_private": {
                    "type": "boolean",
                    "x-nullable": true
                },
                "project_name": {
                    "type": "string"
                },
                "rate": {
                    "description": "Rate for this task",
                    "type": "number"
                },
                "rate_last_updated": {
                    "description": "Last date for rate change",
                    "type": "string",
                    "x-nullable": true
                },
                "recurring": {
                    "description": "Whether this is a recurring task",
                    "type": "boolean"
                },
                "toggl_accounts_id": {
                    "description": "Task assignee, if set above this will be the toggl_account_id for that user",
                    "type": "string",
                    "x-nullable": true
                },
                "tracked_seconds": {
                    "description": "The value tracked_seconds is in milliseconds, not in seconds.",
                    "type": "integer"
                },
                "user_id": {
                    "description": "Task assignee, if available",
                    "type": "integer",
                    "x-nullable": true
                },
                "user_name": {
                    "type": "string",
                    "x-nullable": true
                },
                "workspace_id": {
                    "description": "Workspace ID",
                    "type": "integer"
                }
            }
        },
        "models.TimeEntryChecklist": {
            "type": "object",
            "properties": {
                "time_entries_count_check": {
                    "type": "boolean"
                },
                "time_entries_created_check": {
                    "type": "boolean"
                }
            }
        },
        "models.TimeEntryConstraints": {
            "type": "object",
            "properties": {
                "description_present": {
                    "type": "boolean"
                },
                "max_tags": {
                    "type": "integer"
                },
                "project_present": {
                    "type": "boolean"
                },
                "tag_present": {
                    "type": "boolean"
                },
                "task_present": {
                    "type": "boolean"
                },
                "time_entry_constraints_enabled": {
                    "type": "boolean"
                }
            }
        },
        "models.TimeEntrySharedWith": {
            "type": "object",
            "properties": {
                "accepted": {
                    "type": "boolean"
                },
                "user_id": {
                    "type": "integer"
                },
                "user_name": {
                    "type": "string"
                }
            }
        },
        "models.TimelineEvent": {
            "type": "object",
            "properties": {
                "desktop_id": {
                    "type": "string"
                },
                "end_time": {
                    "type": "integer"
                },
                "filename": {
                    "type": "string"
                },
                "id": {
                    "type": "integer"
                },
                "idle": {
                    "type": "boolean"
                },
                "start_time": {
                    "type": "integer"
                },
                "title": {
                    "type": "string"
                }
            }
        },
        "models.TimelineSettings": {
            "type": "object",
            "properties": {
                "record_timeline": {
                    "type": "boolean"
                }
            }
        },
        "models.Timesheet": {
            "type": "object",
            "properties": {
                "approved_or_rejected_at": {
                    "type": "string"
                },
                "approved_or_rejected_id": {
                    "type": "integer"
                },
                "created_at": {
                    "type": "string"
                },
                "deleted_at": {
                    "type": "string"
                },
                "force_approved": {
                    "type": "boolean"
                },
                "rejection_comment": {
                    "type": "string"
                },
                "reminder_sent_at": {
                    "type": "string"
                },
                "review_layer": {
                    "type": "integer"
                },
                "start_date": {
                    "type": "string"
                },
                "status": {
                    "type": "string"
                },
                "submission_email_sent_at": {
                    "type": "string"
                },
                "submitted_at": {
                    "type": "string"
                },
                "timesheet_id": {
                    "type": "integer"
                },
                "timesheet_setup_id": {
                    "type": "integer"
                },
                "timezone": {
                    "type": "string"
                },
                "updated_at": {
                    "type": "string"
                },
                "working_hours_in_minutes": {
                    "type": "integer"
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "models.TimesheetSetupError": {
            "type": "object",
            "properties": {
                "code": {
                    "type": "string"
                },
                "message": {
                    "type": "string"
                }
            }
        },
        "models.Timezone": {
            "type": "object",
            "properties": {
                "name": {
                    "type": "string"
                },
                "utc": {
                    "type": "string"
                }
            }
        },
        "models.TrackReminder": {
            "type": "object",
            "properties": {
                "created_at": {
                    "description": "Reminder creation time",
                    "type": "string"
                },
                "email_reminder_enabled": {
                    "description": "EmailReminderEnabled indicates if email notifications are enabled",
                    "type": "boolean"
                },
                "frequency": {
                    "description": "Frequency of the reminder in days, should be either 1 or 7",
                    "type": "integer"
                },
                "group_ids": {
                    "description": "Groups IDs to send the reminder to",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "reminder_id": {
                    "description": "Reminder ID",
                    "type": "integer"
                },
                "slack_reminder_enabled": {
                    "description": "SlackReminderEnabled indicates if slack notifications are enabled",
                    "type": "boolean"
                },
                "threshold": {
                    "description": "Threshold is the number of hours after which the reminder will be sent",
                    "type": "integer"
                },
                "user_ids": {
                    "description": "User IDs to send the reminder to",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "workspace_id": {
                    "description": "Workspace ID",
                    "type": "integer"
                }
            }
        },
        "models.Transfer": {
            "type": "object",
            "properties": {
                "created_at": {
                    "type": "string"
                },
                "current_owner_accepted": {
                    "type": "boolean"
                },
                "current_owner_answered_at": {
                    "type": "string"
                },
                "current_owner_id": {
                    "type": "integer"
                },
                "finished_at": {
                    "type": "string"
                },
                "new_owner_accepted": {
                    "type": "boolean"
                },
                "new_owner_answered_at": {
                    "type": "string"
                },
                "new_owner_id": {
                    "type": "integer"
                },
                "organization_id": {
                    "type": "integer"
                },
                "outcome_name": {
                    "type": "string"
                },
                "owner_transfer_id": {
                    "type": "integer"
                },
                "requester_id": {
                    "type": "integer"
                }
            }
        },
        "models.TrialInfo": {
            "type": "object",
            "properties": {
                "can_have_trial": {
                    "description": "CanHaveInitialTrial is true if neither the organization nor the owner has never had a trial before",
                    "type": "boolean"
                },
                "last_pricing_plan_id": {
                    "description": "What was the previous plan before the trial",
                    "type": "integer",
                    "x-nullable": true
                },
                "next_payment_date": {
                    "description": "When the trial payment is due",
                    "type": "string",
                    "x-nullable": true
                },
                "trial": {
                    "description": "Whether the organization's subscription is currently on trial",
                    "type": "boolean"
                },
                "trial_available": {
                    "description": "When a trial is available for this organization\nDeprecated: TrialAvailable - use CanHaveInitialTrial instead.\nRetained for front-end compatibility.",
                    "type": "boolean"
                },
                "trial_end_date": {
                    "description": "When the trial ends",
                    "type": "string",
                    "x-nullable": true
                },
                "trial_plan_id": {
                    "type": "integer",
                    "x-nullable": true
                }
            }
        },
        "models.UnifiedSubscriptionInvoice": {
            "type": "object",
            "properties": {
                "creation_date": {
                    "type": "string",
                    "format": "date-time"
                },
                "currency": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "hosted_url": {
                    "type": "string"
                },
                "id": {
                    "type": "string"
                },
                "invoice_number": {
                    "type": "string"
                },
                "pdf_url": {
                    "type": "string"
                },
                "status": {
                    "type": "string"
                },
                "total_amount": {
                    "type": "integer"
                }
            }
        },
        "models.UnifiedSubscriptionInvoiceList": {
            "type": "object",
            "properties": {
                "items": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.UnifiedSubscriptionInvoice"
                    }
                },
                "next": {
                    "type": "string"
                }
            }
        },
        "models.UserData": {
            "type": "object",
            "properties": {
                "name": {
                    "type": "string"
                },
                "user_id": {
                    "type": "integer"
                }
            }
        },
        "models.UserInvoice": {
            "type": "object",
            "properties": {
                "billing_address": {
                    "type": "string"
                },
                "created_at": {
                    "type": "string"
                },
                "currency": {
                    "type": "string"
                },
                "date": {
                    "type": "string"
                },
                "deleted_at": {
                    "type": "string"
                },
                "document_id": {
                    "type": "string"
                },
                "due_date": {
                    "type": "string"
                },
                "integration_ext_id": {
                    "description": "The external ID of the linked entity in the external system (e.g. JIRA/SalesForce)",
                    "type": "string"
                },
                "integration_ext_type": {
                    "description": "The external type of the linked entity in the external system (e.g. JIRA/SalesForce)",
                    "type": "string"
                },
                "integration_provider": {
                    "description": "The provider (e.g. JIRA/SalesForce) that has an entity linked to this Toggl Track entity",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.IntegrationProvider"
                        }
                    ]
                },
                "items": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.UserInvoiceItem"
                    }
                },
                "message": {
                    "type": "string"
                },
                "payment_terms": {
                    "type": "string"
                },
                "purchase_number": {
                    "type": "string"
                },
                "taxes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.UserInvoiceTax"
                    }
                },
                "updated_at": {
                    "type": "string"
                },
                "user_id": {
                    "type": "integer"
                },
                "user_invoice_id": {
                    "type": "integer"
                },
                "workspace_address": {
                    "type": "string"
                },
                "workspace_id": {
                    "type": "integer"
                },
                "workspace_logo": {
                    "type": "string"
                }
            }
        },
        "models.UserInvoiceItem": {
            "type": "object",
            "properties": {
                "amount": {
                    "type": "number"
                },
                "description": {
                    "type": "string"
                },
                "item_id": {
                    "type": "integer"
                },
                "quantity": {
                    "type": "number"
                }
            }
        },
        "models.UserInvoiceTax": {
            "type": "object",
            "properties": {
                "amount": {
                    "type": "number"
                },
                "name": {
                    "type": "string"
                },
                "tax_id": {
                    "type": "integer"
                }
            }
        },
        "models.WorkspacePreferences": {
            "type": "object",
            "properties": {
                "calendar_suggestion_start_date": {
                    "description": "Start date from which to fetch time entries for calendar suggestions (ISO 8601 timestamp)",
                    "type": "string"
                },
                "disable_approvals": {
                    "description": "Completely hides the approvals feature in this workspace",
                    "type": "boolean"
                },
                "disable_expenses": {
                    "description": "Completely hides the expenses feature in this workspace",
                    "type": "boolean"
                },
                "disable_timesheet_view": {
                    "description": "Whether timesheet view is disabled for this workspace",
                    "type": "boolean"
                },
                "hide_start_end_times": {
                    "description": "This workspace works with duration only time entries",
                    "type": "boolean"
                },
                "inc_tos_accepted_at": {
                    "description": "Time of acceptance of the terms of service",
                    "type": "string"
                },
                "inc_tos_accepted_by": {
                    "description": "User ID who accepted the terms of service",
                    "type": "integer"
                },
                "initial_pricing_plan": {
                    "description": "Pricing plan ID",
                    "type": "integer"
                },
                "report_locked_at": {
                    "description": "Date on which \"Lock Time Entries\" feature was enabled",
                    "type": "string"
                },
                "single_sign_on": {
                    "description": "Whether SSO is enabled for this workspace",
                    "type": "boolean"
                },
                "sso_requested_at": {
                    "description": "Date on which SSO was requested",
                    "type": "string"
                }
            }
        },
        "organization.PostOrganizationReply": {
            "type": "object",
            "properties": {
                "id": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "workspace_id": {
                    "type": "integer"
                },
                "workspace_name": {
                    "type": "string"
                }
            }
        },
        "organization.UsageCounter": {
            "type": "object",
            "properties": {
                "count": {
                    "type": "integer"
                },
                "limit": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                },
                "reset_at": {
                    "type": "string"
                }
            }
        },
        "project.PatchInput": {
            "type": "object",
            "properties": {
                "op": {
                    "description": "Patch operation to perform, one of \"add\", \"remove\", \"replace\"",
                    "type": "string"
                },
                "path": {
                    "description": "Path to the field to patch, example: \"/color\"",
                    "type": "string"
                },
                "value": {
                    "description": "Value to set when operation is \"add\" or \"replace\", example: \"#000000\". The value type actually depends on the field being patched."
                }
            }
        },
        "project.Payload": {
            "type": "object",
            "properties": {
                "active": {
                    "description": "Whether the project is active or archived",
                    "type": "boolean"
                },
                "auto_estimates": {
                    "description": "Whether estimates are based on task hours, optional, premium feature",
                    "type": "boolean"
                },
                "billable": {
                    "description": "Whether the project is set as billable, optional, premium feature",
                    "type": "boolean"
                },
                "cid": {
                    "description": "Client ID, legacy",
                    "type": "integer"
                },
                "client_id": {
                    "description": "Client ID, optional",
                    "type": "integer"
                },
                "client_name": {
                    "description": "Client name, optional",
                    "type": "string"
                },
                "color": {
                    "description": "Project color",
                    "type": "string"
                },
                "currency": {
                    "description": "Project currency, optional, premium feature",
                    "type": "string"
                },
                "end_date": {
                    "description": "End date of a project timeframe",
                    "type": "string"
                },
                "estimated_hours": {
                    "description": "Estimated hours, optional, premium feature",
                    "type": "integer"
                },
                "external_reference": {
                    "type": "string"
                },
                "fixed_fee": {
                    "description": "Project fixed fee, optional, premium feature",
                    "type": "number"
                },
                "is_private": {
                    "description": "Whether the project is private or not",
                    "type": "boolean"
                },
                "is_shared": {
                    "description": "Shared",
                    "type": "boolean"
                },
                "name": {
                    "description": "Project name",
                    "type": "string"
                },
                "rate": {
                    "description": "Hourly rate, optional, premium feature",
                    "type": "number"
                },
                "rate_change_mode": {
                    "description": "Rate change mode, optional, premium feature. Can be \"start-today\", \"override-current\", \"override-all\"",
                    "type": "string"
                },
                "recurring": {
                    "description": "Project is recurring, optional, premium feature",
                    "type": "boolean"
                },
                "recurring_parameters": {
                    "description": "Project recurring parameters, optional, premium feature",
                    "allOf": [
                        {
                            "$ref": "#/definitions/project.RecurringParameters"
                        }
                    ]
                },
                "start_date": {
                    "description": "Start date of a project timeframe",
                    "type": "string"
                },
                "template": {
                    "description": "Project is template, optional, premium feature",
                    "type": "boolean"
                },
                "template_id": {
                    "description": "Template ID, optional",
                    "type": "integer"
                }
            }
        },
        "project.RecurringParameters": {
            "type": "object",
            "properties": {
                "custom_period": {
                    "description": "Recurring custom period, the \"period\" field must be \"custom\"",
                    "type": "integer"
                },
                "period": {
                    "description": "Recurring period, example \"monthly\"",
                    "type": "string"
                },
                "project_start_date": {
                    "description": "Recurring start date",
                    "type": "string"
                }
            }
        },
        "project.RestoreParams": {
            "type": "object",
            "properties": {
                "projects": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "restore_all_projects": {
                    "type": "boolean"
                }
            }
        },
        "projects.PatchFailure": {
            "type": "object",
            "properties": {
                "id": {
                    "type": "integer"
                },
                "message": {
                    "type": "string"
                }
            }
        },
        "projects.PatchOutput": {
            "type": "object",
            "properties": {
                "failure": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/projects.PatchFailure"
                    }
                },
                "success": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "projects.Payload": {
            "type": "object",
            "properties": {
                "project_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "projects.pinnedProjectPayload": {
            "type": "object",
            "properties": {
                "pin": {
                    "type": "boolean"
                }
            }
        },
        "projects.taskCountPayload": {
            "type": "object",
            "properties": {
                "project_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "projects.userCountPayload": {
            "type": "object",
            "properties": {
                "project_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "push.deletePushServicesUnsubscribe": {
            "type": "object",
            "properties": {
                "fcm_registration_token": {
                    "type": "string"
                }
            }
        },
        "push.postPushServicesSubscribe": {
            "type": "object",
            "properties": {
                "fcm_registration_token": {
                    "type": "string"
                }
            }
        },
        "rates.creationRequest": {
            "type": "object",
            "required": [
                "level",
                "level_id"
            ],
            "properties": {
                "amount": {
                    "description": "Amount of the rate, required, must be greater than 0",
                    "type": "number"
                },
                "level": {
                    "description": "Level of the rate, required, must be one of: 'workspace', 'workspace_user', 'project', 'project_user', 'task'",
                    "type": "string",
                    "enum": [
                        "workspace",
                        "workspace_user",
                        "project",
                        "project_user",
                        "task"
                    ]
                },
                "level_id": {
                    "description": "Identifier of the level, required",
                    "type": "integer"
                },
                "mode": {
                    "description": "Mode of the rate, required if Start is not informed, must be one of: 'override-all', 'override-current', 'start-today'",
                    "type": "string",
                    "enum": [
                        "override-all",
                        "override-current",
                        "start-today"
                    ]
                },
                "start": {
                    "description": "Start date time of the rate, required if Mode is not informed, must be a valid date time",
                    "type": "string"
                },
                "type": {
                    "description": "Type of the rate, required, must be one of 'billable_rates', 'labor_rates'",
                    "type": "string"
                }
            }
        },
        "related.UserWithRelated": {
            "type": "object",
            "properties": {
                "2fa_enabled": {
                    "type": "boolean"
                },
                "api_token": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "at": {
                    "type": "string",
                    "format": "date-time"
                },
                "authorization_updated_at": {
                    "description": "AuthorizationUpdatedAt timestamp when the authorization user session object was last updated.",
                    "type": "string"
                },
                "beginning_of_week": {
                    "type": "integer"
                },
                "clients": {
                    "description": "Clients, null if with_related_data was not set to true or if the user does not have any clients",
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.Client"
                    }
                },
                "country_id": {
                    "type": "integer"
                },
                "created_at": {
                    "type": "string",
                    "format": "date-time"
                },
                "default_workspace_id": {
                    "type": "integer"
                },
                "email": {
                    "type": "string",
                    "format": "email"
                },
                "fullname": {
                    "type": "string"
                },
                "has_password": {
                    "type": "boolean"
                },
                "id": {
                    "type": "integer"
                },
                "image_url": {
                    "type": "string",
                    "example": "http://example.com"
                },
                "intercom_hash": {
                    "description": "will be omitted if empty",
                    "type": "string"
                },
                "oauth_providers": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "openid_email": {
                    "type": "string",
                    "format": "email"
                },
                "openid_enabled": {
                    "type": "boolean"
                },
                "options": {
                    "description": "will be omitted if empty",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.Options"
                        }
                    ]
                },
                "projects": {
                    "description": "Projects, null if with_related_data was not set to true or if the user does not have any projects",
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Project"
                    }
                },
                "tags": {
                    "description": "Tags, null if with_related_data was not set to true, or if the user does not have any tags",
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.Tag"
                    }
                },
                "tasks": {
                    "description": "Tasks, null if with_related_data was not set to true or if the user does not have any tasks",
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.Task"
                    }
                },
                "time_entries": {
                    "description": "TimeEntries, null if with_related_data was not set to true or if the user does not have any time entries",
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.TimeEntry"
                    }
                },
                "timezone": {
                    "type": "string"
                },
                "updated_at": {
                    "type": "string",
                    "format": "date-time"
                },
                "workspaces": {
                    "description": "Workspaces, null if with_related_data was not set to true or if the user does not have any workspaces",
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.Workspace"
                    }
                }
            }
        },
        "reminders.Payload": {
            "type": "object",
            "properties": {
                "email_reminder_enabled": {
                    "description": "EmailReminderEnabled indicates if email notifications are enabled",
                    "type": "boolean"
                },
                "frequency": {
                    "description": "Frequency of the reminder in days, should be either 1 or 7",
                    "type": "integer"
                },
                "group_ids": {
                    "description": "Group IDs to send the reminder to, can be omitted if user_ids is provided",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "slack_reminder_enabled": {
                    "description": "SlackReminderEnabled indicates if slack notifications are enabled",
                    "type": "boolean"
                },
                "threshold": {
                    "description": "Threshold is the number of hours after which the reminder will be sent",
                    "type": "number"
                },
                "user_ids": {
                    "description": "User IDs to send the reminder to, can be omitted if group_ids is provided",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "reminders.payload": {
            "type": "object",
            "properties": {
                "email_reminder_enabled": {
                    "description": "EmailReminderEnabled indicates if email notifications are enabled",
                    "type": "boolean"
                },
                "frequency": {
                    "description": "Frequency of the reminder in days, should be either 1 or 7",
                    "type": "integer"
                },
                "group_ids": {
                    "description": "Group IDs to send the reminder to, can be omitted if user_ids is provided",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "slack_reminder_enabled": {
                    "description": "SlackReminderEnabled indicates if slack notifications are enabled",
                    "type": "boolean"
                },
                "threshold": {
                    "description": "Threshold is the number of hours after which the reminder will be sent",
                    "type": "number"
                },
                "user_ids": {
                    "description": "User IDs to send the reminder to, can be omitted if group_ids is provided",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "saml2.LoginResponse": {
            "type": "object",
            "properties": {
                "sso_url": {
                    "type": "string"
                }
            }
        },
        "saved.Payload": {
            "type": "object",
            "properties": {
                "fixed_daterange": {
                    "type": "boolean"
                },
                "id": {
                    "type": "integer"
                },
                "name": {
                    "type": "string"
                },
                "params": {
                    "type": "object",
                    "additionalProperties": true
                },
                "public": {
                    "type": "boolean"
                },
                "regenerate_token": {
                    "type": "boolean"
                }
            }
        },
        "scheduled.payload": {
            "type": "object",
            "properties": {
                "bookmark_id": {
                    "type": "integer"
                },
                "frequency": {
                    "type": "integer"
                },
                "group_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "user_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "shared.bulkDeleteInputData": {
            "type": "object",
            "properties": {
                "ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "smail.ContactPayload": {
            "type": "object",
            "properties": {
                "Email": {
                    "type": "string"
                },
                "Message": {
                    "type": "string"
                },
                "Name": {
                    "type": "string"
                }
            }
        },
        "smail.DemoPayload": {
            "type": "object",
            "properties": {
                "Email": {
                    "type": "string"
                },
                "FirstName": {
                    "type": "string"
                },
                "LastName": {
                    "type": "string"
                },
                "Phone": {
                    "type": "string"
                },
                "Purpose": {
                    "type": "string"
                },
                "Source": {
                    "type": "string"
                },
                "TeamSize": {
                    "type": "string"
                }
            }
        },
        "smail.MeetPayload": {
            "type": "object",
            "properties": {
                "email": {
                    "type": "string"
                },
                "location": {
                    "type": "string"
                }
            }
        },
        "sso.Confirmation": {
            "type": "object",
            "properties": {
                "confirmation_code": {
                    "type": "string"
                }
            }
        },
        "subscription.OutData": {
            "type": "object",
            "properties": {
                "active_users": {
                    "type": "integer"
                },
                "auto_renew": {
                    "type": "boolean"
                },
                "billing_period_in_months": {
                    "type": "integer"
                },
                "campaign_available": {
                    "type": "boolean"
                },
                "cancel_date": {
                    "type": "string"
                },
                "card_details": {
                    "$ref": "#/definitions/models.CardDetails"
                },
                "company_id": {
                    "type": "integer"
                },
                "contact_details": {
                    "$ref": "#/definitions/models.ContactDetail"
                },
                "currency": {
                    "type": "string"
                },
                "current_period_ends_at": {
                    "type": "string"
                },
                "current_period_starts_at": {
                    "type": "string"
                },
                "customer_id": {
                    "type": "integer"
                },
                "end_date": {
                    "description": "Deprecated: this field will be replaced by CurrentPeriodEndsAt",
                    "type": "string"
                },
                "enterprise": {
                    "type": "boolean"
                },
                "is_subscription_beta": {
                    "description": "temporary flag which is true iff there is at least one admin in the organization,\nwho has the `multi_workspace_payments` beta flag enabled",
                    "type": "boolean"
                },
                "is_unified": {
                    "type": "boolean"
                },
                "keep_trial_on_subscription": {
                    "description": "KeepTrialOnSubscription instructs a consumer that when user chooses to subscribe,\nthe trial should be kept. Unless it's `true`, customer must cancel the trial.\nIf no trial active, is nil",
                    "type": "boolean"
                },
                "last_invoice": {
                    "$ref": "#/definitions/subscription.invoiceInfo"
                },
                "last_payment": {
                    "$ref": "#/definitions/models.PaymentInfo"
                },
                "last_pricing_plan_id": {
                    "type": "integer"
                },
                "new_signup_trial": {
                    "type": "boolean"
                },
                "next_payment_date": {
                    "type": "string"
                },
                "payment_failed": {
                    "type": "boolean"
                },
                "payment_method": {
                    "type": "string"
                },
                "plan_id": {
                    "type": "integer"
                },
                "plan_name": {
                    "type": "string"
                },
                "pricing_plan_id": {
                    "description": "Legacy fields (kept for compatibility with FE)",
                    "type": "integer"
                },
                "renewal_at": {
                    "type": "string"
                },
                "renewal_date": {
                    "type": "string"
                },
                "seat_cost_in_cents": {
                    "type": "integer"
                },
                "seats": {
                    "type": "integer"
                },
                "site": {
                    "type": "string"
                },
                "start_date": {
                    "description": "Deprecated: this field will be replaced by CurrentPeriodStartsAt",
                    "type": "string"
                },
                "state": {
                    "type": "string"
                },
                "subscription_created_at": {
                    "type": "string"
                },
                "subscription_period": {
                    "$ref": "#/definitions/models.Period"
                },
                "trial_available": {
                    "type": "boolean"
                },
                "trial_end_date": {
                    "type": "string"
                },
                "trial_start_date": {
                    "type": "string"
                }
            }
        },
        "subscription.createUnifiedSubsRequest": {
            "type": "object",
            "properties": {
                "pricing_plan_tag": {
                    "type": "string"
                }
            }
        },
        "subscription.invoiceInfo": {
            "type": "object",
            "properties": {
                "amount": {
                    "type": "integer"
                },
                "created_at": {
                    "type": "string"
                },
                "currency_id": {
                    "type": "integer"
                },
                "due": {
                    "type": "string"
                },
                "id": {
                    "type": "integer"
                },
                "paid_at": {
                    "type": "string"
                },
                "tax_percentage": {
                    "type": "number"
                },
                "total_amount": {
                    "type": "integer"
                }
            }
        },
        "subscription.payload": {
            "type": "object",
            "required": [
                "data"
            ],
            "properties": {
                "data": {
                    "type": "object",
                    "additionalProperties": true
                }
            }
        },
        "subscription.responsesSubmittedPayload": {
            "type": "object",
            "properties": {
                "responses_submitted": {
                    "$ref": "#/definitions/models.DiscountRequestResponses"
                }
            }
        },
        "subscription.updateUnifiedSubsRequest": {
            "type": "object",
            "properties": {
                "pricing_plan_tag": {
                    "type": "string"
                }
            }
        },
        "tags.payload": {
            "type": "object",
            "properties": {
                "name": {
                    "description": "Tag name",
                    "type": "string"
                }
            }
        },
        "task.PatchFailure": {
            "type": "object",
            "properties": {
                "id": {
                    "type": "integer"
                },
                "message": {
                    "type": "string"
                }
            }
        },
        "task.PatchInput": {
            "type": "object",
            "properties": {
                "op": {
                    "type": "string"
                },
                "path": {
                    "type": "string"
                },
                "value": {}
            }
        },
        "task.PatchOutput": {
            "type": "object",
            "properties": {
                "failure": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/task.PatchFailure"
                    }
                },
                "success": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "task.Payload": {
            "type": "object",
            "properties": {
                "active": {
                    "description": "Use false to mark the task as done",
                    "type": "boolean"
                },
                "estimated_seconds": {
                    "description": "Task estimation in seconds",
                    "type": "integer"
                },
                "external_reference": {
                    "description": "Task external reference",
                    "type": "string"
                },
                "name": {
                    "description": "Name",
                    "type": "string"
                },
                "user_id": {
                    "description": "Creator ID, if omitted, will use requester user ID",
                    "type": "integer"
                }
            }
        },
        "task.Response": {
            "type": "object",
            "properties": {
                "data": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.Task"
                    }
                },
                "page": {
                    "type": "integer"
                },
                "per_page": {
                    "type": "integer"
                },
                "sort_field": {
                    "type": "string"
                },
                "sort_order": {
                    "type": "string"
                },
                "total_count": {
                    "type": "integer"
                }
            }
        },
        "tasks.requestBody": {
            "type": "object",
            "properties": {
                "project_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "task_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "tasks.responseBody": {
            "type": "object",
            "additionalProperties": {
                "type": "array",
                "items": {
                    "$ref": "#/definitions/models.Task"
                }
            }
        },
        "time.Weekday": {
            "type": "integer",
            "enum": [
                0,
                1,
                2,
                3,
                4,
                5,
                6
            ],
            "x-enum-varnames": [
                "Sunday",
                "Monday",
                "Tuesday",
                "Wednesday",
                "Thursday",
                "Friday",
                "Saturday"
            ]
        },
        "timeentries.BulkGetSharingRequest": {
            "type": "object",
            "properties": {
                "time_entry_id": {
                    "type": "integer"
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "timeentries.BulkGetSharingResponse": {
            "type": "object",
            "properties": {
                "is_accepted": {
                    "type": "boolean"
                },
                "time_entry_id": {
                    "type": "integer"
                },
                "time_entry_invitation_id": {
                    "type": "integer"
                },
                "user_id": {
                    "type": "integer"
                },
                "user_name": {
                    "type": "string"
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "timeentries.GetTimEntryInvitationsResponse": {
            "type": "object",
            "properties": {
                "shared_by_user_id": {
                    "type": "integer"
                },
                "shared_by_user_name": {
                    "type": "string"
                },
                "time_entry": {
                    "$ref": "#/definitions/github_com_toggl_toggl_api_internal_models.TimeEntry"
                },
                "time_entry_invitation_id": {
                    "type": "integer"
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "timeentry.EventMetadata": {
            "type": "object",
            "properties": {
                "origin_feature": {
                    "type": "string"
                },
                "visible_goals_count": {
                    "type": "integer"
                }
            }
        },
        "timeentry.PatchFailure": {
            "type": "object",
            "properties": {
                "id": {
                    "description": "The ID for which the patch operation failed.",
                    "type": "integer"
                },
                "message": {
                    "description": "The operation failure reason.",
                    "type": "string"
                }
            }
        },
        "timeentry.PatchInput": {
            "type": "object",
            "properties": {
                "op": {
                    "description": "Operation (add/remove/replace)",
                    "type": "string"
                },
                "path": {
                    "description": "The path to the entity to patch (e.g. /description)",
                    "type": "string"
                },
                "value": {
                    "description": "The new value for the entity in path."
                }
            }
        },
        "timeentry.PatchOutput": {
            "type": "object",
            "properties": {
                "failure": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/timeentry.PatchFailure"
                    }
                },
                "success": {
                    "description": "The IDs for which the patch was succesful.",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "timeentry.Payload": {
            "type": "object",
            "properties": {
                "billable": {
                    "description": "Whether the time entry is marked as billable, optional, default false",
                    "type": "boolean"
                },
                "created_with": {
                    "description": "Must be provided when creating a time entry and should identify the service/application used to create it",
                    "type": "string"
                },
                "description": {
                    "description": "Time entry description, optional",
                    "type": "string"
                },
                "duration": {
                    "description": "Time entry duration. For running entries should be negative, preferable -1",
                    "type": "integer"
                },
                "duronly": {
                    "description": "Deprecated: Used to create a time entry with a duration but without a stop time. This parameter can be ignored.",
                    "type": "boolean"
                },
                "event_metadata": {
                    "$ref": "#/definitions/timeentry.EventMetadata"
                },
                "expense_ids": {
                    "description": "Work Expenses associated with the Time Entry",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "pid": {
                    "description": "Project ID, legacy field",
                    "type": "integer"
                },
                "project_id": {
                    "description": "Project ID, optional",
                    "type": "integer"
                },
                "shared_with_user_ids": {
                    "description": "List of user IDs to share this time entry with",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "start": {
                    "description": "Start time in UTC, required for creation. Format: 2006-01-02T15:04:05Z",
                    "type": "string"
                },
                "start_date": {
                    "description": "If provided during creation, the date part will take precedence over the date part of \"start\". Format: 2006-11-07",
                    "type": "string"
                },
                "stop": {
                    "description": "Stop time in UTC, can be omitted if it's still running or created with \"duration\".\nIf \"stop\" and \"duration\" are provided, values must be consistent (start + duration == stop)",
                    "type": "string"
                },
                "tag_action": {
                    "description": "Can be \"add\" or \"delete\". Used when updating an existing time entry",
                    "type": "string"
                },
                "tag_ids": {
                    "description": "IDs of tags to add/remove",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "tags": {
                    "description": "Names of tags to add/remove. If name does not exist as tag, one will be created automatically",
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "task_id": {
                    "description": "Task ID, optional",
                    "type": "integer"
                },
                "tid": {
                    "description": "Task ID, legacy field",
                    "type": "integer"
                },
                "uid": {
                    "description": "Time Entry creator ID, legacy field",
                    "type": "integer"
                },
                "user_id": {
                    "description": "Time Entry creator ID, if omitted will use the requester user ID",
                    "type": "integer"
                },
                "wid": {
                    "description": "Workspace ID, legacy field",
                    "type": "integer"
                },
                "workspace_id": {
                    "description": "Workspace ID, required",
                    "type": "integer"
                }
            }
        },
        "timesheets.APITimesheet": {
            "type": "object",
            "properties": {
                "approved_or_rejected_at": {
                    "type": "string"
                },
                "approved_or_rejected_id": {
                    "type": "integer"
                },
                "approved_or_rejected_name": {
                    "type": "string"
                },
                "approver_avatar_url": {
                    "type": "string"
                },
                "approver_id": {
                    "type": "integer"
                },
                "approver_name": {
                    "type": "string"
                },
                "approvers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/timesheets.Approver"
                    }
                },
                "approvers_layers": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "$ref": "#/definitions/timesheets.Approver"
                        }
                    }
                },
                "end_date": {
                    "type": "string"
                },
                "errors": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/timesheets.TimesheetError"
                    }
                },
                "member_avatar_url": {
                    "type": "string"
                },
                "member_id": {
                    "type": "integer"
                },
                "member_name": {
                    "type": "string"
                },
                "period_editable": {
                    "type": "boolean"
                },
                "period_end": {
                    "type": "string"
                },
                "period_locked": {
                    "type": "boolean"
                },
                "period_start": {
                    "type": "string"
                },
                "periodicity": {
                    "type": "string"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "rejection_comment": {
                    "type": "string"
                },
                "reminder_day": {
                    "$ref": "#/definitions/time.Weekday"
                },
                "reminder_sent_at": {
                    "type": "string"
                },
                "reminder_time": {
                    "type": "string"
                },
                "review_layer": {
                    "type": "integer"
                },
                "reviews": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/timesheets.Review"
                    }
                },
                "start_date": {
                    "type": "string"
                },
                "status": {
                    "type": "string"
                },
                "submitted_at": {
                    "type": "string"
                },
                "timesheet_setup_id": {
                    "type": "integer"
                },
                "timezone": {
                    "type": "string"
                },
                "working_hours_in_minutes": {
                    "type": "integer"
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "timesheets.Approver": {
            "type": "object",
            "properties": {
                "active": {
                    "type": "boolean"
                },
                "avatar_url": {
                    "type": "string"
                },
                "deleted": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "user_id": {
                    "type": "integer"
                }
            }
        },
        "timesheets.GetPaginatedResponse": {
            "type": "object",
            "properties": {
                "data": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/timesheets.APITimesheet"
                    }
                },
                "page": {
                    "type": "integer"
                },
                "per_page": {
                    "type": "integer"
                },
                "total_count": {
                    "type": "integer"
                }
            }
        },
        "timesheets.PutBatchTimesheetPayload": {
            "type": "object",
            "properties": {
                "force_approved": {
                    "type": "boolean"
                },
                "rejection_comment": {
                    "type": "string"
                },
                "start_date": {
                    "type": "string"
                },
                "status": {
                    "type": "string"
                },
                "timesheet_setup_id": {
                    "type": "integer"
                }
            }
        },
        "timesheets.Review": {
            "type": "object",
            "properties": {
                "approved": {
                    "type": "boolean"
                },
                "avatar_url": {
                    "type": "string"
                },
                "force_approved": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "rejection_comment": {
                    "type": "string"
                },
                "review_layer": {
                    "type": "integer"
                },
                "updated_at": {
                    "type": "string"
                },
                "user_id": {
                    "type": "integer"
                }
            }
        },
        "timesheets.TimesheetError": {
            "type": "object",
            "properties": {
                "code": {
                    "type": "string"
                },
                "message": {
                    "type": "string"
                }
            }
        },
        "timesheets.TimesheetHoursResponse": {
            "type": "object",
            "properties": {
                "start_date": {
                    "type": "string"
                },
                "timesheet_setup_id": {
                    "type": "integer"
                },
                "total_seconds": {
                    "type": "integer"
                },
                "working_hours_in_minutes": {
                    "type": "integer"
                }
            }
        },
        "timesheets.postTimesheetHoursPayload": {
            "type": "object",
            "properties": {
                "start_date": {
                    "type": "string"
                },
                "timesheet_setup_id": {
                    "type": "integer"
                }
            }
        },
        "timesheets.putTimesheetPayload": {
            "type": "object",
            "properties": {
                "force_approved": {
                    "type": "boolean"
                },
                "rejection_comment": {
                    "type": "string"
                },
                "status": {
                    "type": "string"
                }
            }
        },
        "timesheetsetups.APITimesheetSetup": {
            "type": "object",
            "properties": {
                "approver_avatar_url": {
                    "type": "string"
                },
                "approver_id": {
                    "type": "integer"
                },
                "approver_name": {
                    "type": "string"
                },
                "approvers": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/timesheetsetups.Approvers"
                    }
                },
                "approvers_layers": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "$ref": "#/definitions/timesheetsetups.Approvers"
                        }
                    }
                },
                "email_reminder_enabled": {
                    "type": "boolean"
                },
                "end_date": {
                    "type": "string"
                },
                "errors": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/models.TimesheetSetupError"
                    }
                },
                "id": {
                    "type": "integer"
                },
                "member_avatar_url": {
                    "type": "string"
                },
                "member_id": {
                    "type": "integer"
                },
                "member_name": {
                    "type": "string"
                },
                "periodicity": {
                    "type": "string"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "reminder_day": {
                    "$ref": "#/definitions/time.Weekday"
                },
                "reminder_time": {
                    "type": "string"
                },
                "slack_reminder_enabled": {
                    "type": "boolean"
                },
                "start_date": {
                    "type": "string"
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "timesheetsetups.Approvers": {
            "type": "object",
            "properties": {
                "active": {
                    "type": "boolean"
                },
                "avatar_url": {
                    "type": "string"
                },
                "deleted": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "user_id": {
                    "type": "integer"
                }
            }
        },
        "timesheetsetups.GetPaginatedResponse": {
            "type": "object",
            "properties": {
                "data": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/timesheetsetups.APITimesheetSetup"
                    }
                }
            }
        },
        "timesheetsetups.createPayload": {
            "type": "object",
            "properties": {
                "approver_id": {
                    "type": "integer"
                },
                "approver_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "approvers_layers": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    }
                },
                "email_reminder_enabled": {
                    "type": "boolean"
                },
                "member_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "periodicity": {
                    "type": "string"
                },
                "reminder_day": {
                    "$ref": "#/definitions/time.Weekday"
                },
                "reminder_time": {
                    "type": "string"
                },
                "slack_reminder_enabled": {
                    "type": "boolean"
                },
                "start_date": {
                    "type": "string"
                }
            }
        },
        "timesheetsetups.updatePayload": {
            "type": "object",
            "properties": {
                "approver_id": {
                    "type": "integer"
                },
                "approver_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "approvers_layers": {
                    "type": "object",
                    "additionalProperties": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    }
                },
                "email_reminder_enabled": {
                    "type": "boolean"
                },
                "end_date": {
                    "type": "string"
                },
                "reminder_day": {
                    "$ref": "#/definitions/time.Weekday"
                },
                "reminder_time": {
                    "type": "string"
                },
                "slack_reminder_enabled": {
                    "type": "boolean"
                }
            }
        },
        "types.Permission": {
            "type": "object",
            "properties": {
                "condition": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "entity": {
                    "type": "string",
                    "enum": [
                        "organization",
                        "workspace",
                        "project",
                        "group"
                    ]
                },
                "name": {
                    "type": "string"
                },
                "permission_id": {
                    "type": "integer"
                }
            }
        },
        "types.Role": {
            "type": "object",
            "properties": {
                "code": {
                    "type": "string"
                },
                "description": {
                    "type": "string"
                },
                "entity": {
                    "type": "string",
                    "enum": [
                        "organization",
                        "workspace",
                        "project",
                        "group"
                    ]
                },
                "name": {
                    "type": "string"
                },
                "organization_id": {
                    "type": "integer"
                },
                "permissions": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/types.Permission"
                    }
                },
                "privilege_level": {
                    "type": "integer"
                },
                "role_id": {
                    "type": "integer"
                },
                "type": {
                    "type": "string",
                    "enum": [
                        "owner",
                        "admin",
                        "manager",
                        "guest"
                    ]
                }
            }
        },
        "user.Failure": {
            "type": "object",
            "properties": {
                "id": {
                    "description": "Organization user ID",
                    "type": "integer"
                },
                "message": {
                    "description": "Found error message",
                    "type": "string"
                }
            }
        },
        "user.Flags": {
            "type": "object",
            "additionalProperties": true
        },
        "user.Output": {
            "type": "object",
            "properties": {
                "failure": {
                    "description": "List of found errors",
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/user.Failure"
                    }
                },
                "success": {
                    "description": "List of org user IDs that were successfully patched",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "user.PatchParams": {
            "type": "object",
            "properties": {
                "delete": {
                    "description": "Organization user IDs to be deleted",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "user.PostPayload": {
            "type": "object",
            "properties": {
                "labor_cost": {
                    "description": "Labor cost for this project user",
                    "type": "number"
                },
                "labor_cost_change_mode": {
                    "description": "Labor cost change mode for this project user. Can be \"start-today\", \"override-current\", \"override-all\"",
                    "type": "string"
                },
                "manager": {
                    "description": "Whether the user will be manager of the project",
                    "type": "boolean"
                },
                "project_id": {
                    "description": "Project ID",
                    "type": "integer"
                },
                "rate": {
                    "description": "Rate for this project user",
                    "type": "number"
                },
                "rate_change_mode": {
                    "description": "Rate change mode for this project user. Can be \"start-today\", \"override-current\", \"override-all\"",
                    "type": "string"
                },
                "user_id": {
                    "description": "User ID",
                    "type": "integer"
                }
            }
        },
        "user.PutPayload": {
            "type": "object",
            "properties": {
                "labor_cost": {
                    "description": "Labor cost for this project user",
                    "type": "number"
                },
                "labor_cost_change_mode": {
                    "description": "Labor cost change mode for this project user. Can be \"start-today\", \"override-current\", \"override-all\"",
                    "type": "string"
                },
                "manager": {
                    "description": "Whether the user will be manager of the project",
                    "type": "boolean"
                },
                "rate": {
                    "description": "Rate for this project user",
                    "type": "number"
                },
                "rate_change_mode": {
                    "description": "Rate change mode for this project user. Can be \"start-today\", \"override-current\", \"override-all\"",
                    "type": "string"
                }
            }
        },
        "utils.DefaultProjectTask": {
            "type": "object",
            "properties": {
                "project_id": {
                    "type": "integer"
                },
                "task_id": {
                    "type": "integer"
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "utils.EntityWorkspace": {
            "type": "object",
            "properties": {
                "id": {
                    "type": "integer"
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "utils.KeyboardShortcut": {
            "type": "object",
            "properties": {
                "key": {
                    "type": "integer"
                },
                "modifiers": {
                    "type": "integer"
                }
            }
        },
        "utils.MacOSAutoTracking": {
            "type": "object",
            "properties": {
                "id": {
                    "type": "string"
                },
                "keyword": {
                    "type": "string"
                },
                "project_id": {
                    "type": "integer"
                },
                "task_id": {
                    "type": "integer"
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "utils.WindowsAutoTracking": {
            "type": "object",
            "properties": {
                "billable": {
                    "type": "boolean"
                },
                "description": {
                    "type": "string"
                },
                "enabled": {
                    "type": "boolean"
                },
                "id": {
                    "type": "string"
                },
                "parameters": {
                    "$ref": "#/definitions/utils.WindowsAutoTrackingParameter"
                },
                "project_id": {
                    "type": "integer"
                },
                "skip_when_timer_is_running": {
                    "type": "boolean"
                },
                "start_without_confirmation": {
                    "type": "boolean"
                },
                "tag_ids": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "task_id": {
                    "type": "integer"
                },
                "type": {
                    "type": "integer"
                },
                "workspace_id": {
                    "type": "integer"
                }
            }
        },
        "utils.WindowsAutoTrackingParameter": {
            "type": "object",
            "properties": {
                "duration": {
                    "type": "string"
                },
                "keyword": {
                    "type": "string"
                },
                "keyword_mode": {
                    "type": "string"
                },
                "time_of_day": {
                    "type": "string"
                },
                "week_days": {
                    "type": "string"
                }
            }
        },
        "workspace.Payload": {
            "type": "object",
            "properties": {
                "admins": {
                    "description": "List of admins, optional",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "default_currency": {
                    "description": "Default currency, premium feature, optional, only for existing WS, will be 'USD' initially",
                    "type": "string"
                },
                "default_hourly_rate": {
                    "description": "The default hourly rate, premium feature, optional, only for existing WS, will be 0.0 initially",
                    "type": "number"
                },
                "initial_pricing_plan": {
                    "description": "The subscription plan for the workspace, deprecated",
                    "type": "integer"
                },
                "limit_public_project_data": {
                    "description": "Whether the workspace limits public projects data in reports to admins.",
                    "type": "boolean"
                },
                "name": {
                    "description": "Workspace name",
                    "type": "string"
                },
                "only_admins_may_create_projects": {
                    "description": "Only admins will be able to create projects, optional, only for existing WS, will be false initially",
                    "type": "boolean"
                },
                "only_admins_may_create_tags": {
                    "description": "Only admins will be able to create tags, optional, only for existing WS, will be false initially",
                    "type": "boolean"
                },
                "only_admins_see_team_dashboard": {
                    "description": "Only admins will be able to see the team dashboard, optional, only for existing WS, will be false initially",
                    "type": "boolean"
                },
                "projects_billable_by_default": {
                    "description": "Whether projects will be set as billable by default, premium feature, optional, only for existing WS. Will be true initially",
                    "type": "boolean"
                },
                "projects_enforce_billable": {
                    "description": "Whether tracking time to projects will enforce billable setting to be respected.",
                    "type": "boolean"
                },
                "projects_private_by_default": {
                    "description": "Whether projects will be set to private by default, optional. Will be true initially.",
                    "type": "boolean"
                },
                "rate_change_mode": {
                    "description": "The rate change mode, premium feature, optional, only for existing WS. Can be \"start-today\", \"override-current\", \"override-all\"",
                    "type": "string"
                },
                "reports_collapse": {
                    "description": "Whether reports should be collapsed by default, optional, only for existing WS, will be true initially",
                    "type": "boolean"
                },
                "rounding": {
                    "description": "Default rounding, premium feature, optional, only for existing WS",
                    "type": "integer"
                },
                "rounding_minutes": {
                    "description": "Default rounding in minutes, premium feature, optional, only for existing WS",
                    "type": "integer"
                }
            }
        },
        "workspace.WithActiveProjectCount": {
            "type": "object",
            "properties": {
                "active_project_count": {
                    "type": "integer"
                },
                "admin": {
                    "description": "Current user is workspace admin\nDeprecated",
                    "type": "boolean"
                },
                "api_token": {
                    "description": "deprecated",
                    "type": "string"
                },
                "at": {
                    "description": "Timestamp of last workspace change",
                    "type": "string"
                },
                "business_ws": {
                    "description": "Workspace on Premium subscription",
                    "type": "boolean"
                },
                "csv_upload": {
                    "description": "CSV upload data",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.CsvUpload"
                        }
                    ]
                },
                "default_currency": {
                    "description": "Default currency, premium feature, optional, only for existing WS, will be 'USD' initially",
                    "type": "string"
                },
                "default_hourly_rate": {
                    "description": "The default hourly rate, premium feature, optional, only for existing WS, will be 0.0 initially",
                    "type": "number"
                },
                "disable_approvals": {
                    "description": "Disable approvals in the workspace",
                    "type": "boolean"
                },
                "disable_expenses": {
                    "description": "Disable expenses in the workspace",
                    "type": "boolean"
                },
                "disable_timesheet_view": {
                    "description": "Disable timesheet view in the workspace",
                    "type": "boolean"
                },
                "hide_start_end_times": {
                    "type": "boolean"
                },
                "ical_enabled": {
                    "description": "Calendar integration enabled",
                    "type": "boolean"
                },
                "ical_url": {
                    "description": "URL of calendar",
                    "type": "string"
                },
                "id": {
                    "description": "Identifier of the workspace",
                    "type": "integer"
                },
                "last_modified": {
                    "description": "Last modification of data in the workspace",
                    "type": "string"
                },
                "limit_public_project_data": {
                    "description": "Limit public projects data in reports to admins.",
                    "type": "boolean"
                },
                "logo_url": {
                    "description": "URL of workspace logo",
                    "type": "string"
                },
                "max_data_retention_days": {
                    "description": "How far back free workspaces can access data.",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.DataRetentionDays"
                        }
                    ]
                },
                "name": {
                    "description": "Name of the workspace",
                    "type": "string"
                },
                "only_admins_may_create_projects": {
                    "description": "Only admins will be able to create projects, optional, only for existing WS, will be false initially",
                    "type": "boolean"
                },
                "only_admins_may_create_tags": {
                    "description": "Only admins will be able to create tags, optional, only for existing WS, will be false initially",
                    "type": "boolean"
                },
                "only_admins_see_team_dashboard": {
                    "description": "Only admins will be able to see the team dashboard, optional, only for existing WS, will be false initially",
                    "type": "boolean"
                },
                "organization_id": {
                    "description": "Identifier of the organization",
                    "type": "integer"
                },
                "permissions": {
                    "description": "Permissions list",
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "premium": {
                    "description": "Workspace on Starter subscription",
                    "type": "boolean"
                },
                "projects_billable_by_default": {
                    "description": "New projects billable by default",
                    "type": "boolean"
                },
                "projects_enforce_billable": {
                    "description": "Whether tracking time to projects will enforce billable setting to be respected.",
                    "type": "boolean"
                },
                "projects_private_by_default": {
                    "description": "Workspace setting for default project visbility.",
                    "type": "boolean"
                },
                "rate_last_updated": {
                    "description": "Timestamp of last workspace rate update",
                    "type": "string"
                },
                "reports_collapse": {
                    "description": "Whether reports should be collapsed by default, optional, only for existing WS, will be true initially",
                    "type": "boolean"
                },
                "role": {
                    "description": "Role of the current user in the workspace",
                    "type": "string"
                },
                "rounding": {
                    "description": "Default rounding, premium feature, optional, only for existing WS. 0 - nearest, 1 - round up, -1 - round down",
                    "type": "integer"
                },
                "rounding_minutes": {
                    "description": "Default rounding in minutes, premium feature, optional, only for existing WS",
                    "type": "integer"
                },
                "subscription": {
                    "description": "deprecated",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.Subscription"
                        }
                    ]
                },
                "suspended_at": {
                    "description": "Timestamp of suspension",
                    "type": "string",
                    "format": "date-time"
                },
                "te_constraints": {
                    "description": "Time entry constraints setting",
                    "allOf": [
                        {
                            "$ref": "#/definitions/models.TimeEntryConstraints"
                        }
                    ]
                },
                "working_hours_in_minutes": {
                    "description": "Working hours in minutes",
                    "type": "integer"
                }
            }
        },
        "workspace_users.PatchParams": {
            "type": "object",
            "properties": {
                "delete": {
                    "description": "Workspace user IDs to be deleted",
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "workspaces.JSONResult": {
            "type": "object",
            "properties": {
                "wid": {
                    "type": "integer"
                }
            }
        }
    },
    "securityDefinitions": {
        "BasicAuth": {
            "type": "basic"
        }
    }
}