Teamwork

Project management and collaboration platform

developer.teamwork.com ↗
Version
3.0
OpenAPI
3.0.0
Endpoints
188
Schemas
296
Updated
3 days ago
Project management project-management collaboration
Use this API in your AI agent

Query structured spec data via REST or MCP. Get exactly what your agent needs.

Get API Key

Server URLs

https://{site_name}.teamwork.com

Endpoints

Clear filters

Budgets 1 endpoints

PUT /projects/api/v3/projects/budgets/:id/tasklists/budgets.json

payload. If an ID is provided it is seen as an update, else it inserts. NOTE: the payload provided is the final source of truth, meaning any budgets omitted will be cleared. Adds or updates task list budgets.

operationId: Budgets_addOrUpdateTaskListBudgets

Request Body

{
  "$ref": "#/components/requestBodies/tasklistbudget.BulkAddBudgetRequest"
}

Responses

200 200 OK
400 400 Bad Request
403 403 Forbidden
404 404 Not Found (no data)
409 409 Conflict
PUT /projects/api/v3/projects/budgets/:id/tasklists/budgets.json

Customfields 1 endpoints

PUT /projects/api/v3/customfields/{customFieldId}.json

Updates an existing custom field.

operationId: CustomFields_updateExistingField

Parameters

Name In Required Type Description
customFieldId path required integer

Request Body

{
  "$ref": "#/components/requestBodies/customfield.Request"
}

Responses

200 200 OK
400 400 Bad Request
403 403 Forbidden
404 404 Not Found (no data)
409 409 Conflict
PUT /projects/api/v3/customfields/{customFieldId}.json

Notebooks 2 endpoints

PUT /projects/api/v3/notebooks/{notebookId}/lock.json

Locks a specific notebook.

operationId: Notebooks_lockNotebook

Parameters

Name In Required Type Description
notebookId path required integer

Responses

200 200 OK (no data)
400 400 Bad Request
403 403 Forbidden
404 404 Not Found (no data)
PUT /projects/api/v3/notebooks/{notebookId}/lock.json
PUT /projects/api/v3/notebooks/{notebookId}/unlock.json

Unlocks a specific notebook.

operationId: Notebooks_unlockNotebook

Parameters

Name In Required Type Description
notebookId path required integer

Responses

200 200 OK (no data)
400 400 Bad Request
403 403 Forbidden
404 404 Not Found (no data)
PUT /projects/api/v3/notebooks/{notebookId}/unlock.json

People 1 endpoints

PUT /projects/api/v3/projects/{projectId}/people.json

Adds a list of user ID's to a project.

operationId: People_addToProject

Parameters

Name In Required Type Description
projectId path required integer

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/people.UsersPayload"
      }
    }
  },
  "required": true
}

Responses

200 200 OK
400 400 Bad Request
403 403 Forbidden
PUT /projects/api/v3/projects/{projectId}/people.json

Projects 3 endpoints

PUT /projects/api/v3/projects/featureorder.json

Each field must have an index, from 0 to numFeatures -1 without repeated numbers to provide the order to display the features

operationId: Projects_setDefaultFeaturesOrder

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/project.FeatureOrderDefaults"
      }
    }
  },
  "required": true
}

Responses

200 200 OK
400 400 Bad Request
403 403 Forbidden
PUT /projects/api/v3/projects/featureorder.json
PUT /projects/api/v3/projects/tentative/{projectId}/convert.json
operationId: Projects_convertTentativeProject

Parameters

Name In Required Type Description
projectId path required integer

Responses

200 200 OK
400 400 Bad Request
403 403 Forbidden
PUT /projects/api/v3/projects/tentative/{projectId}/convert.json
PUT /projects/api/v3/projects/{projectId}/featureorder.json

Each field must have an index, from 0 to numFeatures -1 without repeated numbers to provide the order to display the features

operationId: Projects_updateFeatureOrder

Parameters

Name In Required Type Description
projectId path required integer

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/project.FeatureOrderRequest"
      }
    }
  },
  "required": true
}

Responses

200 200 OK
400 400 Bad Request
403 403 Forbidden
PUT /projects/api/v3/projects/{projectId}/featureorder.json

Risks 1 endpoints

PUT /projects/api/v3/projects/{projectId}/risks/copy

Copies the risk register from one project to another.

operationId: Risks_copyProjectRiskRegister

Parameters

Name In Required Type Description
projectId path required integer

Responses

200 200 OK (no data)
400 400 Bad Request
403 403 Forbidden
404 404 Not Found (no data)
PUT /projects/api/v3/projects/{projectId}/risks/copy

Timetracking 5 endpoints

PUT /projects/api/v3/me/timers/{timerId}.json

Edits the fields of a timer.

operationId: TimeTracking_editTimerFields

Parameters

Name In Required Type Description
timerId path required integer

Request Body

{
  "$ref": "#/components/requestBodies/timer.Request"
}

Responses

200 200 OK
400 400 Bad Request
403 403 Forbidden
404 404 Not Found (no data)
PUT /projects/api/v3/me/timers/{timerId}.json
PUT /projects/api/v3/me/timers/{timerId}/complete.json

Complete an existing timer. If the timer is currently running, it is paused to create the timelog entry. When the timelog is created, the timer is deleted.

operationId: TimeTracking_completeTimerById

Parameters

Name In Required Type Description
timerId path required integer

Responses

200 200 OK
201 201 Created
400 400 Bad Request
403 403 Forbidden
404 404 Not Found (no data)
PUT /projects/api/v3/me/timers/{timerId}/complete.json
PUT /projects/api/v3/me/timers/{timerId}/pause.json

Pause an existing timer.

operationId: TimeTracking_pauseTimerById

Parameters

Name In Required Type Description
timerId path required integer

Responses

200 200 OK
400 400 Bad Request
403 403 Forbidden
404 404 Not Found (no data)
PUT /projects/api/v3/me/timers/{timerId}/pause.json
PUT /projects/api/v3/me/timers/{timerId}/resume.json

Resume an existing timer. If other timers are currently running, those timers are paused before resuming.

operationId: TimeTracking_resumeTimerById

Parameters

Name In Required Type Description
timerId path required integer

Responses

200 200 OK
201 201 Created
400 400 Bad Request
403 403 Forbidden
404 404 Not Found (no data)
PUT /projects/api/v3/me/timers/{timerId}/resume.json
PUT /projects/api/v3/me/timers/{timerId}/undelete.json

Restore an deleted timer.

operationId: TimeTracking_restoreTimerItem

Parameters

Name In Required Type Description
timerId path required integer

Responses

204 204 No Content (no data)
400 400 Bad Request
403 403 Forbidden
404 404 Not Found (no data)
PUT /projects/api/v3/me/timers/{timerId}/undelete.json

Schemas

object active.ProjectMetricActive
{
  "type": "object",
  "title": "ProjectMetricActive",
  "properties": {
    "value": {
      "type": "integer"
    }
  },
  "description": "ProjectMetricActive contains all the information returned from a active."
}
object active.Response
{
  "type": "object",
  "title": "Response",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/active.ProjectMetricActive"
    }
  },
  "description": "Response contains information about a specific active."
}
object activity.ActivitiesResponse
{
  "type": "object",
  "title": "ActivitiesResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "type": "object",
      "properties": {
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        }
      }
    },
    "activities": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/activity.Activity"
      }
    }
  },
  "description": "ActivitiesResponse contains all the information returned when sending a GET\nrequest to the activity endpoint."
}
object activity.Activity
{
  "type": "object",
  "title": "Activity",
  "properties": {
    "id": {
      "type": "integer"
    },
    "item": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "link": {
      "type": "string"
    },
    "type": {
      "type": "string"
    },
    "user": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "itemId": {
      "type": "integer"
    },
    "userId": {
      "type": "integer"
    },
    "company": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "dueDate": {
      "type": "string"
    },
    "forUser": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "dateTime": {
      "type": "string"
    },
    "itemLink": {
      "type": "string"
    },
    "lockdown": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "companyId": {
      "type": "integer"
    },
    "forUserId": {
      "type": "integer"
    },
    "isPrivate": {
      "type": "integer"
    },
    "projectId": {
      "type": "integer"
    },
    "lockdownId": {
      "type": "integer"
    },
    "publicInfo": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "forUserName": {
      "type": "string"
    },
    "activityType": {
      "type": "string"
    },
    "extraDescription": {
      "type": "string"
    },
    "latestActivityType": {
      "type": "string"
    }
  },
  "description": "Activity represents a view of activity."
}
object billable.ProjectMetricBillable
{
  "type": "object",
  "title": "ProjectMetricBillable",
  "properties": {
    "name": {
      "type": "string"
    },
    "value": {
      "type": "integer"
    }
  },
  "description": "ProjectMetricBillable contains all the information returned from a billable."
}
object billable.ProjectMetricBillablesResponse
{
  "type": "object",
  "title": "ProjectMetricBillablesResponse",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/billable.ProjectMetricBillable"
      }
    }
  },
  "description": "ProjectMetricBillablesResponse contains information about a group of billables."
}
object category.CategoriesResponse
{
  "type": "object",
  "title": "CategoriesResponse",
  "properties": {
    "projectCategories": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.ProjectCategory"
      }
    },
    "projectCategoryTotals": {
      "$ref": "#/components/schemas/view.CategoryTotals"
    }
  },
  "description": "CategoriesResponse contains information about a group of categories."
}
object comment.CommentsResponse
{
  "type": "object",
  "title": "CommentsResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "comments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/comment.FullComment"
      }
    },
    "included": {
      "type": "object",
      "properties": {
        "files": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectFileV205"
          }
        },
        "links": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.LinkItem"
          }
        },
        "tasks": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskV205"
          }
        },
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "notebooks": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Notebook"
          }
        },
        "milestones": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Milestone"
          }
        },
        "fileversions": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.FileversionV205"
          }
        }
      }
    }
  },
  "description": "CommentsResponse contains information about a group of comments."
}
object comment.FullComment
{
  "type": "object",
  "title": "FullComment",
  "properties": {
    "id": {
      "type": "integer"
    },
    "body": {
      "type": "string"
    },
    "meta": {
      "$ref": "#/components/schemas/comment.Meta"
    },
    "files": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "object": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "deleted": {
      "type": "boolean"
    },
    "fileIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "htmlBody": {
      "type": "string"
    },
    "objectId": {
      "type": "integer"
    },
    "postedBy": {
      "type": "integer"
    },
    "deletedBy": {
      "type": "integer"
    },
    "fileCount": {
      "type": "integer"
    },
    "isPrivate": {
      "type": "integer"
    },
    "projectId": {
      "type": "integer"
    },
    "reactions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Reaction"
      }
    },
    "lockdownID": {
      "type": "integer"
    },
    "objectType": {
      "type": "string"
    },
    "commentLink": {
      "type": "string"
    },
    "contentType": {
      "type": "string"
    },
    "dateDeleted": {
      "type": "string"
    },
    "installation": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "lastEditedBy": {
      "type": "integer"
    },
    "dateLastEdited": {
      "type": "string"
    },
    "installationId": {
      "type": "integer"
    },
    "postedByUserId": {
      "type": "integer"
    },
    "postedDateTime": {
      "type": "string"
    },
    "reactionsCount": {
      "type": "integer"
    },
    "deletedByUserId": {
      "type": "integer"
    },
    "lastEditedByUserId": {
      "type": "integer"
    },
    "peopleNotifiedCount": {
      "type": "integer"
    }
  },
  "description": "FullComment contains the full information for a comment"
}
object comment.Meta
{
  "type": "object",
  "title": "Meta",
  "properties": {
    "isRead": {
      "type": "boolean"
    },
    "permissions": {
      "$ref": "#/components/schemas/comment.Permissions"
    }
  },
  "description": "Meta contains metadata for a comment, such as permissions"
}
object comment.Permissions
{
  "type": "object",
  "title": "Permissions",
  "properties": {
    "canEdit": {
      "type": "boolean"
    },
    "canDelete": {
      "type": "boolean"
    }
  },
  "description": "Permissions are the permissions the user has for the comment"
}
object company.CompaniesResponse
{
  "type": "object",
  "title": "CompaniesResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "letters": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "included": {
      "type": "object",
      "properties": {
        "tags": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tag"
          }
        },
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "updates": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.CompanyUpdate"
          }
        },
        "countries": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Country"
          }
        },
        "industries": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Industry"
          }
        },
        "customfields": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.CustomField"
          }
        },
        "customfieldCompanies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.CustomFieldValueCompany"
          }
        }
      }
    },
    "companies": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Company"
      }
    }
  },
  "description": "CompaniesResponse contains information about a group of companies."
}
object company.Company
{
  "type": "object",
  "title": "Company",
  "properties": {
    "cid": {
      "type": "string"
    },
    "fax": {
      "type": "string"
    },
    "zip": {
      "type": "string"
    },
    "city": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "phone": {
      "type": "string"
    },
    "state": {
      "type": "string"
    },
    "tagIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "profile": {
      "type": "string"
    },
    "website": {
      "type": "string"
    },
    "emailOne": {
      "type": "string"
    },
    "emailTwo": {
      "type": "string"
    },
    "addressOne": {
      "type": "string"
    },
    "addressTwo": {
      "type": "string"
    },
    "emailThree": {
      "type": "string"
    },
    "countrycode": {
      "type": "string"
    },
    "customFields": {
      "$ref": "#/components/schemas/company.CustomFields"
    },
    "privateNotes": {
      "type": "string"
    },
    "industryCatId": {
      "type": "integer"
    },
    "clientManagedBy": {
      "type": "integer"
    },
    "logoPendingFileRef": {
      "type": "string"
    }
  },
  "description": "Company contains all the information returned from a company."
}
object company.CustomFields
{
  "type": "object",
  "title": "CustomFields",
  "properties": {
    "Values": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/value.CustomFieldValue"
      }
    }
  },
  "description": "CustomFields is the custom fields type."
}
object company.Request
{
  "type": "object",
  "title": "Request",
  "properties": {
    "tags": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/tag.Tag"
      }
    },
    "company": {
      "$ref": "#/components/schemas/company.Company"
    },
    "companyOptions": {
      "type": "object",
      "properties": {
        "fireWebhook": {
          "type": "boolean"
        },
        "logActivity": {
          "type": "boolean"
        },
        "useNotifyViaTWIM": {
          "type": "boolean"
        }
      }
    }
  },
  "description": "Request contains information of a company to be created or updated."
}
object company.Response
{
  "type": "object",
  "title": "Response",
  "properties": {
    "company": {
      "$ref": "#/components/schemas/view.Company"
    },
    "included": {
      "type": "object",
      "properties": {
        "tags": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tag"
          }
        },
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "updates": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.CompanyUpdate"
          }
        },
        "countries": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Country"
          }
        },
        "industries": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Industry"
          }
        },
        "customfields": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.CustomField"
          }
        },
        "customfieldCompanies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.CustomFieldValueCompany"
          }
        }
      }
    }
  },
  "description": "Response contains information about a specific company."
}
object complete.Response
{
  "type": "object",
  "title": "Response",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/complete.TaskMetricComplete"
    }
  },
  "description": "Response contains information about a specific complete."
}
object complete.TaskMetricComplete
{
  "type": "object",
  "title": "TaskMetricComplete",
  "properties": {
    "value": {
      "type": "integer"
    }
  },
  "description": "TaskMetricComplete contains all the information returned from a complete."
}
object customfield.BulkDeleteRequest
{
  "type": "object",
  "title": "BulkDeleteRequest",
  "properties": {
    "customfieldIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    }
  },
  "description": "BulkDeleteRequest contains the ids of the custom fields that should be\nremoved."
}
object customfield.CustomField
{
  "type": "object",
  "title": "CustomField",
  "properties": {
    "name": {
      "type": "string"
    },
    "type": {
      "type": "string"
    },
    "entity": {
      "type": "string",
      "description": "using a verbose name to avoid conflict"
    },
    "formula": {
      "type": "string"
    },
    "groupId": {
      "type": "integer"
    },
    "options": {},
    "privacy": {
      "$ref": "#/components/schemas/payload.UserGroups"
    },
    "required": {
      "type": "boolean"
    },
    "isPrivate": {
      "type": "boolean"
    },
    "projectId": {
      "type": "integer"
    },
    "description": {
      "type": "string"
    },
    "currencyCode": {
      "type": "string"
    },
    "visibilities": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "description": "CustomField contains all the information returned from a custom field."
}
object customfield.CustomFieldsResponse
{
  "type": "object",
  "title": "CustomFieldsResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "type": "object",
      "properties": {
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        }
      }
    },
    "customfields": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.CustomField"
      }
    }
  },
  "description": "CustomFieldsResponse contains information about a group of custom fields."
}
object customfield.Request
{
  "type": "object",
  "title": "Request",
  "properties": {
    "customfield": {
      "$ref": "#/components/schemas/customfield.CustomField"
    }
  },
  "description": "Request contains information of a custom field to be created or updated."
}
object customfield.Response
{
  "type": "object",
  "title": "Response",
  "properties": {
    "count": {
      "type": "integer"
    },
    "customfield": {
      "$ref": "#/components/schemas/view.CustomField"
    }
  },
  "description": "Response contains information about a specific customfield."
}
object dashboard.UserDashboardsResponse
{
  "type": "object",
  "title": "UserDashboardsResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "type": "object",
      "properties": {
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        },
        "dashboardPanels": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.UserDashboardPanel"
          }
        },
        "dashboardSettings": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.UserDashboardSetting"
          }
        },
        "dashboardPanelSettings": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.UserDashboardPanelSetting"
          }
        }
      }
    },
    "dashboards": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.UserDashboard"
      }
    }
  },
  "description": "UserDashboardsResponse contains information about a group of dashboards."
}
object deadline.MilestoneMetricDeadline
{
  "type": "object",
  "title": "MilestoneMetricDeadline",
  "properties": {
    "date": {
      "type": "string"
    },
    "value": {
      "type": "integer"
    }
  },
  "description": "MilestoneMetricDeadline contains all the information returned from a deadline."
}
object deadline.MilestoneMetricDeadlinesResponse
{
  "type": "object",
  "title": "MilestoneMetricDeadlinesResponse",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/deadline.MilestoneMetricDeadline"
      }
    }
  },
  "description": "MilestoneMetricDeadlinesResponse contains information about a group of deadlines."
}
object entity.ProjectBudgetRange
{
  "type": "object",
  "title": "ProjectBudgetRange",
  "properties": {
    "to": {
      "type": "integer"
    },
    "from": {
      "type": "integer"
    },
    "count": {
      "type": "integer"
    },
    "companyId": {
      "type": "integer"
    }
  },
  "description": "ProjectBudgetRange is a distribution item type."
}
object form.Banner
{
  "type": "object",
  "title": "Banner",
  "properties": {
    "x": {
      "type": "number"
    },
    "y": {
      "type": "number"
    },
    "url": {
      "type": "string"
    },
    "accentColor": {
      "type": "string"
    },
    "primaryColor": {
      "type": "string"
    }
  },
  "description": "Banner contains information of a form banner to be created or updated."
}
object form.Content
{
  "type": "object",
  "title": "Content",
  "properties": {
    "logo": {
      "$ref": "#/components/schemas/form.Logo"
    },
    "name": {
      "type": "string"
    },
    "state": {
      "type": "string"
    },
    "banner": {
      "$ref": "#/components/schemas/form.Banner"
    },
    "definition": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "pendingLogoId": {
      "type": "string"
    },
    "pendingBannerId": {
      "type": "string"
    }
  },
  "description": "Content contains information of a form content to be created or updated."
}
object form.CopyForm
{
  "type": "object",
  "title": "CopyForm",
  "properties": {
    "title": {
      "type": "string"
    },
    "hostObject": {
      "$ref": "#/components/schemas/form.HostObject"
    },
    "projectIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "copyAssignees": {
      "type": "boolean"
    },
    "generateToken": {
      "type": "boolean"
    }
  },
  "description": "CopyForm contains information on where and what to copy from a form"
}
object form.CopyRequest
{
  "type": "object",
  "title": "CopyRequest",
  "properties": {
    "form": {
      "$ref": "#/components/schemas/form.CopyForm"
    }
  },
  "description": "CopyRequest outter request for copying a form"
}
object form.DestinationObject
{
  "type": "object",
  "title": "DestinationObject",
  "properties": {
    "id": {
      "type": "integer"
    },
    "type": {
      "type": "string"
    }
  },
  "description": "DestinationObject contains information of a form destination object to be created or updated."
}
object form.Form
{
  "type": "object",
  "title": "Form",
  "properties": {
    "content": {
      "$ref": "#/components/schemas/form.Content"
    },
    "hostObject": {
      "$ref": "#/components/schemas/form.HostObject"
    },
    "redirectUrl": {
      "type": "string"
    },
    "primaryColor": {
      "type": "string"
    },
    "submitButtonText": {
      "type": "string"
    },
    "taskTitleFieldId": {
      "type": "string"
    },
    "destinationObject": {
      "$ref": "#/components/schemas/form.DestinationObject"
    },
    "confirmationMessage": {
      "type": "string"
    },
    "responseEmailFieldId": {
      "type": "string"
    },
    "allowTeamworkBranding": {
      "type": "boolean"
    },
    "promptAdditionalSubmissions": {
      "type": "boolean"
    }
  },
  "description": "Form contains information of a form to be created or updated."
}
object form.FormsResponse
{
  "type": "object",
  "title": "FormsResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "forms": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Form"
      }
    },
    "included": {
      "type": "object",
      "properties": {
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "tasklists": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tasklist"
          }
        }
      }
    }
  },
  "description": "FormsResponse contains information about a group of forms."
}
object form.HostObject
{
  "type": "object",
  "title": "HostObject",
  "properties": {
    "id": {
      "type": "integer"
    },
    "meta": {
      "$ref": "#/components/schemas/form.HostObjectMeta"
    },
    "type": {
      "type": "string"
    }
  },
  "description": "HostObject contains information of a form host object to be created or updated."
}
object form.HostObjectMeta
{
  "type": "object",
  "title": "HostObjectMeta",
  "properties": {
    "tasklistId": {
      "type": "integer"
    }
  },
  "description": "HostObjectMeta contains information of a form host object meta to be created or updated."
}
object form.Logo
{
  "type": "object",
  "title": "Logo",
  "properties": {
    "url": {
      "type": "string"
    }
  },
  "description": "Logo contains information of a form custom logo to be created or updated."
}
object form.PublicResponse
{
  "type": "object",
  "title": "PublicResponse",
  "properties": {
    "form": {
      "$ref": "#/components/schemas/view.PublicForm"
    }
  },
  "description": "PublicResponse contains information about a specific public form."
}
object form.Request
{
  "type": "object",
  "title": "Request",
  "properties": {
    "form": {
      "$ref": "#/components/schemas/form.Form"
    }
  },
  "description": "Request contains information of a form to be created or updated."
}
object form.Response
{
  "type": "object",
  "title": "Response",
  "properties": {
    "form": {
      "$ref": "#/components/schemas/view.Form"
    },
    "included": {
      "type": "object",
      "properties": {
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "tasklists": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tasklist"
          }
        }
      }
    }
  },
  "description": "Response contains information about a specific form."
}
object health.ProjectMetricHealth
{
  "type": "object",
  "title": "ProjectMetricHealth",
  "properties": {
    "name": {
      "type": "string"
    },
    "value": {
      "type": "integer"
    }
  },
  "description": "ProjectMetricHealth stores a specific health counter."
}
object health.ProjectMetricHealthsResponse
{
  "type": "object",
  "title": "ProjectMetricHealthsResponse",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/health.ProjectMetricHealth"
      }
    }
  },
  "description": "ProjectMetricHealthsResponse contains information about a group of healths.\nFollowing this format to satisfy the Numerics integration."
}
object importer.Importer
{
  "type": "object",
  "title": "Importer",
  "properties": {
    "name": {
      "type": "string"
    },
    "status": {
      "type": "string"
    },
    "running": {
      "type": "boolean"
    }
  },
  "description": "Importer single importer for response."
}
object importer.ImportersResponse
{
  "type": "object",
  "title": "ImportersResponse",
  "properties": {
    "importers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/importer.Importer"
      }
    },
    "isImporting": {
      "type": "boolean"
    }
  },
  "description": "ImportersResponse contains information about a group of importers."
}
object invoice.ProjectMetricInvoicesResponse
{
  "type": "object",
  "title": "ProjectMetricInvoicesResponse",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer"
        }
      }
    }
  },
  "description": "ProjectMetricInvoicesResponse contains information about a group of invoices."
}
object late.Response
{
  "type": "object",
  "title": "Response",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/late.TaskMetricLate"
    }
  },
  "description": "Response contains the count of late tasks.\nFollowing this format to satisfy the Numerics integration."
}
object late.TaskMetricLate
{
  "type": "object",
  "title": "TaskMetricLate",
  "properties": {
    "value": {
      "type": "integer"
    }
  },
  "description": "TaskMetricLate contains count information about late tasks."
}
object message.MessagesResponse
{
  "type": "object",
  "title": "MessagesResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "type": "object",
      "properties": {
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "Included": {
          "$ref": "#/components/schemas/messagereply.Included"
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "messageReplies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.MessageReply"
          }
        }
      }
    },
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Message"
      }
    }
  },
  "description": "MessagesResponse contains all the information returned when sending a GET\nrequest to the message endpoint."
}
object message.Request
{
  "type": "object",
  "title": "Request",
  "properties": {
    "read": {
      "type": "boolean"
    }
  },
  "description": "Request contains information of a message to be created or updated."
}
object message.Response
{
  "type": "object",
  "title": "Response",
  "properties": {
    "message": {
      "$ref": "#/components/schemas/view.Message"
    },
    "included": {
      "type": "object",
      "properties": {
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "Included": {
          "$ref": "#/components/schemas/messagereply.Included"
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "messageReplies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.MessageReply"
          }
        }
      }
    }
  },
  "description": "Response contains information about a specific message."
}
object messagereply.Included
{
  "type": "object",
  "title": "Included",
  "properties": {
    "tags": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Tag"
      }
    },
    "users": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.User"
      }
    },
    "messages": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Message"
      }
    }
  },
  "description": "Included contains sideloadable stuff for message replies."
}
object milestone.MilestonesResponse
{
  "type": "object",
  "title": "MilestonesResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "type": "object",
      "properties": {
        "tags": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tag"
          }
        },
        "tasks": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskV205"
          }
        },
        "teams": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Team"
          }
        },
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "tasklists": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tasklist"
          }
        },
        "projectCategories": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectCategory"
          }
        },
        "tasklistTaskStats": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskStats"
          }
        }
      }
    },
    "milestones": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Milestone"
      }
    }
  },
  "description": "MilestonesResponse contains information about a group of milestones."
}
object milestone.Response
{
  "type": "object",
  "title": "Response",
  "properties": {
    "included": {
      "type": "object",
      "properties": {
        "tags": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tag"
          }
        },
        "tasks": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskV205"
          }
        },
        "teams": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Team"
          }
        },
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "tasklists": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tasklist"
          }
        },
        "projectCategories": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectCategory"
          }
        },
        "tasklistTaskStats": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskStats"
          }
        }
      }
    },
    "milestone": {
      "$ref": "#/components/schemas/view.Milestone"
    }
  },
  "description": "Response contains information about a milestone."
}
object notebook.Notebook
{
  "type": "object",
  "title": "Notebook",
  "properties": {
    "name": {
      "type": "string"
    },
    "type": {
      "type": "string"
    },
    "locked": {
      "type": "boolean"
    },
    "notify": {
      "$ref": "#/components/schemas/payload.Notify"
    },
    "tagIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "privacy": {
      "$ref": "#/components/schemas/payload.UserGroups"
    },
    "contents": {
      "type": "string"
    },
    "sendDiff": {
      "type": "boolean"
    },
    "isPrivate": {
      "type": "boolean"
    },
    "categoryId": {
      "type": "integer"
    },
    "newVersion": {
      "type": "boolean"
    },
    "description": {
      "type": "string"
    },
    "isFullWidth": {
      "type": "boolean"
    },
    "secureContent": {
      "type": "boolean"
    },
    "notifyCurrentUser": {
      "type": "boolean"
    }
  },
  "description": "Notebook contains all the information returned from a notebook."
}
object notebook.NotebooksResponse
{
  "type": "object",
  "title": "NotebooksResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "type": "object",
      "properties": {
        "tags": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tag"
          }
        },
        "teams": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Team"
          }
        },
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "notebookCategories": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.NotebookCategory"
          }
        }
      }
    },
    "notebooks": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Notebook"
      }
    }
  },
  "description": "NotebooksResponse contains information about a group of notebooks."
}
object notebook.Request
{
  "type": "object",
  "title": "Request",
  "properties": {
    "notebook": {
      "$ref": "#/components/schemas/notebook.Notebook"
    }
  },
  "description": "Request contains information of a notebook to be created or updated."
}
object notebook.Response
{
  "type": "object",
  "title": "Response",
  "properties": {
    "included": {
      "type": "object",
      "properties": {
        "tags": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tag"
          }
        },
        "teams": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Team"
          }
        },
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "notebookCategories": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.NotebookCategory"
          }
        }
      }
    },
    "notebook": {
      "$ref": "#/components/schemas/view.Notebook"
    }
  },
  "description": "Response contains information about a specific notebook."
}
object notebook.VersionResponse
{
  "type": "object",
  "title": "VersionResponse",
  "properties": {
    "version": {
      "$ref": "#/components/schemas/view.NotebookVersion"
    },
    "included": {
      "type": "object",
      "properties": {
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        }
      }
    }
  },
  "description": "VersionResponse contains information about a specifc notebook version"
}
object notebook.VersionsResponse
{
  "type": "object",
  "title": "VersionsResponse",
  "properties": {
    "included": {
      "type": "object",
      "properties": {
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        }
      }
    },
    "versions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.NotebookVersion"
      }
    }
  },
  "description": "VersionsResponse contains information about a group of notebook versions"
}
object notification.ProjectBudgetNotification
{
  "type": "object",
  "title": "ProjectBudgetNotification",
  "properties": {
    "id": {
      "type": "integer"
    },
    "teamIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "userIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "budgetId": {
      "type": "integer"
    },
    "projectId": {
      "type": "integer"
    },
    "companyIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "capacityThreshold": {
      "type": "number"
    },
    "notificationMedium": {
      "type": "string"
    }
  },
  "description": "ProjectBudgetNotification contains all the information returned from a notification."
}
object notification.ProjectBudgetRequest
{
  "type": "object",
  "title": "ProjectBudgetRequest",
  "properties": {
    "notification": {
      "$ref": "#/components/schemas/notification.ProjectBudgetNotification"
    }
  },
  "description": "ProjectBudgetRequest contains information of a notification to be created or updated."
}
object notification.Response
{
  "type": "object",
  "title": "Response",
  "properties": {
    "notification": {
      "$ref": "#/components/schemas/view.Notification"
    }
  },
  "description": "Response contains information about a specific notification."
}
object owner.ProjectMetricOwner
{
  "type": "object",
  "title": "ProjectMetricOwner",
  "properties": {
    "name": {
      "type": "string"
    },
    "value": {
      "type": "integer"
    }
  },
  "description": "ProjectMetricOwner contains information about a specific owner."
}
object owner.ProjectMetricOwnersResponse
{
  "type": "object",
  "title": "ProjectMetricOwnersResponse",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/owner.ProjectMetricOwner"
      }
    },
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    }
  },
  "description": "ProjectMetricOwnersResponse contains information about a group of owners."
}
object payload.Date
{
  "type": "object",
  "title": "Date",
  "description": "Date unmarshals represents a Unified API Spec date format."
}
object payload.Notify
{
  "type": "object",
  "title": "Notify",
  "properties": {
    "ids": {
      "$ref": "#/components/schemas/payload.UserGroups"
    },
    "type": {
      "$ref": "#/components/schemas/payload.NotifyType"
    }
  },
  "description": "Notify defines the access lists."
}
object payload.NotifyType
{
  "type": "object",
  "title": "NotifyType",
  "properties": {
    "Set": {
      "type": "boolean"
    },
    "Null": {
      "type": "boolean"
    },
    "Value": {
      "type": "string"
    }
  },
  "description": "NotifyType implements json.Unmarshaler to allow testing between a value\nthat explicitly set to null or omitted."
}
object payload.NullableDate
{
  "type": "object",
  "title": "NullableDate",
  "properties": {
    "Set": {
      "type": "boolean"
    },
    "Null": {
      "type": "boolean"
    },
    "Value": {
      "$ref": "#/components/schemas/payload.Date"
    }
  },
  "description": "NullableDate implements json.Unmarshaler to allow testing between a value\nthat explicitly set to null or omitted.\nDate format \"2006-01-02\""
}
object payload.NullableInt64Slice
{
  "type": "object",
  "title": "NullableInt64Slice",
  "properties": {
    "Set": {
      "type": "boolean"
    },
    "Null": {
      "type": "boolean"
    },
    "Value": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    }
  },
  "description": "NullableInt64Slice implements json.Unmarshaler to allow testing between a\nvalue that explicitly set to null or omitted."
}
object payload.NullableTaskPriority
{
  "type": "object",
  "title": "NullableTaskPriority",
  "properties": {
    "Set": {
      "type": "boolean"
    },
    "Null": {
      "type": "boolean"
    },
    "Value": {
      "type": "string"
    }
  },
  "description": "NullableTaskPriority implements json.Unmarshaler to allow testing\nbetween a value that explicitly set to null or omitted."
}
object payload.NullableTaskRepeatFrequency
{
  "type": "object",
  "title": "NullableTaskRepeatFrequency",
  "properties": {
    "Set": {
      "type": "boolean"
    },
    "Null": {
      "type": "boolean"
    },
    "Value": {
      "type": "string"
    }
  },
  "description": "NullableTaskRepeatFrequency implements json.Unmarshaler to allow testing\nbetween a value that explicitly set to null or omitted."
}
object payload.NullableTaskRepeatMonthlyType
{
  "type": "object",
  "title": "NullableTaskRepeatMonthlyType",
  "properties": {
    "Set": {
      "type": "boolean"
    },
    "Null": {
      "type": "boolean"
    },
    "Value": {
      "type": "string"
    }
  },
  "description": "NullableTaskRepeatMonthlyType implements json.Unmarshaler to allow testing\nbetween a value that explicitly set to null or omitted."
}
object payload.NullableWorkingHourEntryWeekdays
{
  "type": "object",
  "title": "NullableWorkingHourEntryWeekdays",
  "properties": {
    "Set": {
      "type": "boolean"
    },
    "Null": {
      "type": "boolean"
    },
    "Value": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "description": "NullableWorkingHourEntryWeekdays implements json.Unmarshaler to allow testing\nbetween a value that explicitly set to null or omitted."
}
object payload.Time
{
  "type": "object",
  "title": "Time",
  "description": "Time unmarshals represents a Unified API Spec date format."
}
object payload.UserGroups
{
  "type": "object",
  "title": "UserGroups",
  "properties": {
    "teamIds": {
      "$ref": "#/components/schemas/payload.NullableInt64Slice"
    },
    "userIds": {
      "$ref": "#/components/schemas/payload.NullableInt64Slice"
    },
    "companyIds": {
      "$ref": "#/components/schemas/payload.NullableInt64Slice"
    }
  },
  "description": "UserGroups are common lists for storing users, companies and teams ids\ntogether."
}
object people.AddPeopleToProjectResponse
{
  "type": "object",
  "title": "AddPeopleToProjectResponse",
  "properties": {
    "info": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "teamIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "usersAdded": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "usersNotAdded": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "usersAlreadyInProject": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    }
  },
  "description": "AddPeopleToProjectResponse contains information about which users were and weren't add to the project as well\nas why the users were not able to be added"
}
object people.MultiResponse
{
  "type": "object",
  "title": "MultiResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "people": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.User"
      }
    },
    "included": {
      "type": "object",
      "properties": {
        "teams": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Team"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "workingHours": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.WorkingHour"
          }
        },
        "ProjectPermissions": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectPermissions"
          }
        }
      }
    }
  },
  "description": "MultiResponse contains information about a group of users."
}
object people.Response
{
  "type": "object",
  "title": "Response",
  "properties": {
    "person": {
      "$ref": "#/components/schemas/view.User"
    },
    "included": {
      "type": "object",
      "properties": {
        "teams": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Team"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "workingHours": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.WorkingHour"
          }
        },
        "ProjectPermissions": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectPermissions"
          }
        }
      }
    }
  },
  "description": "Response contains information about a user."
}
object people.TaskCompletion
{
  "type": "object",
  "title": "TaskCompletion",
  "properties": {
    "userId": {
      "type": "integer"
    },
    "overdueTasks": {
      "type": "integer"
    },
    "assignedTasks": {
      "type": "integer"
    },
    "activeProjects": {
      "type": "integer"
    },
    "completedTasks": {
      "type": "integer"
    }
  },
  "description": "TaskCompletion contains information about tasks completed by a user."
}
object people.TaskCompletionResponse
{
  "type": "object",
  "title": "TaskCompletionResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "type": "object",
      "properties": {
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        }
      }
    },
    "taskCompletions": {
      "$ref": "#/components/schemas/people.TaskCompletions"
    }
  },
  "description": "TaskCompletionResponse contains information about tasks completed by a user."
}
object people.TaskCompletions
{
  "type": "object",
  "title": "TaskCompletions",
  "properties": {
    "users": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/people.TaskCompletion"
      }
    },
    "totalOverdueTasks": {
      "type": "integer"
    },
    "totalAssignedTasks": {
      "type": "integer"
    },
    "totalActiveProjects": {
      "type": "integer"
    },
    "totalCompletedTasks": {
      "type": "integer"
    }
  },
  "description": "TaskCompletions represents a summary row of total computed counts of, plus individual user data\n/reporting/precanned/usertaskcompletions.json endpoint"
}
object people.UsersPayload
{
  "type": "object",
  "title": "UsersPayload",
  "properties": {
    "userIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "checkTeamIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    }
  },
  "description": "UsersPayload consists of userIDs"
}
object performance.PeopleMetricPerformance
{
  "type": "object",
  "title": "PeopleMetricPerformance",
  "properties": {
    "name": {
      "type": "string"
    },
    "value": {
      "type": "integer"
    }
  },
  "description": "PeopleMetricPerformance contains all the information returned from a performance."
}
object performance.PeopleMetricPerformancesResponse
{
  "type": "object",
  "title": "PeopleMetricPerformancesResponse",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/performance.PeopleMetricPerformance"
      }
    }
  },
  "description": "PeopleMetricPerformancesResponse contains information about a group of performances."
}
object planner.WorkloadPlanner
{
  "type": "object",
  "title": "WorkloadPlanner",
  "properties": {
    "user": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "userId": {
      "type": "integer"
    },
    "capacities": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/planner.WorkloadPlannerCapacity"
      }
    }
  },
  "description": "WorkloadPlanner contains all the information returned from a planner."
}
object planner.WorkloadPlannerCapacity
{
  "type": "object",
  "title": "WorkloadPlannerCapacity",
  "properties": {
    "tasks": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/planner.WorkloadPlannerCapacityTask"
      }
    },
    "capacity": {
      "type": "number",
      "description": "percentage"
    },
    "lengthOfDayMinutes": {
      "type": "number"
    },
    "estimateMinutesTotal": {
      "type": "number"
    }
  },
  "description": "WorkloadPlannerCapacity contains the information regarding an user on a\nspecific date."
}
object planner.WorkloadPlannerCapacityTask
{
  "type": "object",
  "title": "WorkloadPlannerCapacityTask",
  "properties": {
    "taskId": {
      "type": "integer"
    },
    "estimateMinutes": {
      "type": "number"
    }
  },
  "description": "WorkloadPlannerCapacityTask provides how many minutes should a user work in a\ntask for a specific date."
}
object planner.WorkloadPlannersResponse
{
  "type": "object",
  "title": "WorkloadPlannersResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "type": "object",
      "properties": {
        "tasks": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskV205"
          }
        },
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "timelogs": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Timelog"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "tasklists": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tasklist"
          }
        },
        "milestones": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Milestone"
          }
        },
        "workingHours": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.WorkingHour"
          }
        },
        "calendarEvents": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.LegacyCalendarEvent"
          }
        },
        "workingHourEntries": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.WorkingHourEntry"
          }
        }
      }
    },
    "planners": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/planner.WorkloadPlanner"
      }
    }
  },
  "description": "WorkloadPlannersResponse contains information about a group of planners."
}
object priceplan.FeaturesResponse
{
  "type": "object",
  "title": "FeaturesResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "features": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Feature"
      }
    }
  },
  "description": "FeaturesResponse contains all the information returned when sending a GET\nrequest to the features endpoint."
}
object project.FeatureOrder
{
  "type": "object",
  "title": "FeatureOrder",
  "properties": {
    "id": {
      "type": "integer"
    },
    "list": {
      "type": "integer"
    },
    "time": {
      "type": "integer"
    },
    "board": {
      "type": "integer"
    },
    "files": {
      "type": "integer"
    },
    "forms": {
      "type": "integer"
    },
    "gantt": {
      "type": "integer"
    },
    "links": {
      "type": "integer"
    },
    "risks": {
      "type": "integer"
    },
    "table": {
      "type": "integer"
    },
    "people": {
      "type": "integer"
    },
    "proofs": {
      "type": "integer"
    },
    "billing": {
      "type": "integer"
    },
    "finance": {
      "type": "integer"
    },
    "comments": {
      "type": "integer"
    },
    "messages": {
      "type": "integer"
    },
    "settings": {
      "type": "integer"
    },
    "dashboard": {
      "type": "integer"
    },
    "notebooks": {
      "type": "integer"
    },
    "projectId": {
      "type": "integer"
    },
    "milestones": {
      "type": "integer"
    },
    "installationId": {
      "type": "integer"
    },
    "numVisibleTabs": {
      "type": "integer"
    }
  },
  "description": "FeatureOrder contains the information of the feature\norder to display in the UI for a project."
}
object project.FeatureOrderDefaults
{
  "type": "object",
  "title": "FeatureOrderDefaults",
  "properties": {
    "list": {
      "type": "integer"
    },
    "time": {
      "type": "integer"
    },
    "board": {
      "type": "integer"
    },
    "files": {
      "type": "integer"
    },
    "forms": {
      "type": "integer"
    },
    "gantt": {
      "type": "integer"
    },
    "links": {
      "type": "integer"
    },
    "risks": {
      "type": "integer"
    },
    "table": {
      "type": "integer"
    },
    "people": {
      "type": "integer"
    },
    "proofs": {
      "type": "integer"
    },
    "billing": {
      "type": "integer"
    },
    "finance": {
      "type": "integer"
    },
    "comments": {
      "type": "integer"
    },
    "messages": {
      "type": "integer"
    },
    "settings": {
      "type": "integer"
    },
    "dashboard": {
      "type": "integer"
    },
    "notebooks": {
      "type": "integer"
    },
    "milestones": {
      "type": "integer"
    },
    "numVisibleTabs": {
      "type": "integer"
    }
  },
  "description": "FeatureOrderDefaults is the payload used to set\nthe defaults for all projects feature order, and\nallows to also update the projects that have\nan explicitly set defaults"
}
object project.FeatureOrderRequest
{
  "type": "object",
  "title": "FeatureOrderRequest",
  "properties": {
    "featureOrder": {
      "$ref": "#/components/schemas/project.FeatureOrder"
    },
    "featureOrderOptions": {
      "type": "object",
      "properties": {
        "useNotifyViaTWIM": {
          "type": "boolean"
        }
      }
    }
  },
  "description": "FeatureOrderRequest is the payload used to set\nthe project features order as we want to appear\nin the UI tabs selection"
}
object project.FeatureOrderResponse
{
  "type": "object",
  "title": "FeatureOrderResponse",
  "properties": {
    "featureOrder": {
      "$ref": "#/components/schemas/project.FeatureOrder"
    }
  },
  "description": "FeatureOrderResponse is the api response containing\ninformation about the order to display the featues in the UI."
}
object project.Included
{
  "type": "object",
  "title": "Included",
  "properties": {
    "tags": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Tag"
      }
    },
    "users": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.User"
      }
    },
    "stages": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Stage"
      }
    },
    "companies": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Company"
      }
    },
    "countries": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Country"
      }
    },
    "workflows": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Workflow"
      }
    },
    "activities": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.ActivityLog"
      }
    },
    "industries": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Industry"
      }
    },
    "customfields": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.CustomField"
      }
    },
    "portfolioCards": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.PortfolioCard"
      }
    },
    "projectBudgets": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.ProjectBudget"
      }
    },
    "projectUpdates": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.ProjectUpdate"
      }
    },
    "portfolioBoards": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.PortfolioBoard"
      }
    },
    "portfolioColumns": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.PortfolioColumn"
      }
    },
    "projectTaskStats": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.TaskStats"
      }
    },
    "projectCategories": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.ProjectCategory"
      }
    },
    "customfieldProjects": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.CustomFieldValueProject"
      }
    },
    "projectEmailDropboxes": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.ProjectEmailDropbox"
      }
    }
  },
  "description": "Included is the task sideloads"
}
object project.SampleProjectsResponse
{
  "type": "object",
  "title": "SampleProjectsResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "type": "object",
      "properties": {
        "projectCategories": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectCategory"
          }
        }
      }
    },
    "projects": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.SampleProject"
      }
    }
  },
  "description": "SampleProjectsResponse contains information about a group of sample projects."
}
object project.projectsResponseV205
{
  "type": "object",
  "title": "projectsResponseV205",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "$ref": "#/components/schemas/project.Included"
    },
    "projects": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.ProjectV205"
      }
    }
  },
  "description": "projectsResponseV205 contains information about a group of projects."
}
object project.responseV205
{
  "type": "object",
  "title": "responseV205",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "project": {
      "$ref": "#/components/schemas/view.ProjectV205"
    },
    "included": {
      "$ref": "#/components/schemas/project.Included"
    }
  },
  "description": "responseV205 contains information about a project."
}
object risk.RisksResponse
{
  "type": "object",
  "title": "RisksResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "risks": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Risk"
      }
    },
    "included": {
      "type": "object",
      "properties": {
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        }
      }
    }
  },
  "description": "RisksResponse contains all the information returned when sending a GET\nrequest to the risk endpoint."
}
object status.TimelineResponse
{
  "type": "object",
  "title": "TimelineResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "type": "object",
      "properties": {
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "userEvents": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.UserEvents"
          }
        }
      }
    },
    "statuses": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Status"
      }
    }
  },
  "description": "TimelineResponse contains information about a group of statuses."
}
object summary.ColumnCardResponse
{
  "type": "object",
  "title": "ColumnCardResponse",
  "properties": {
    "count": {
      "type": "integer"
    },
    "active": {
      "type": "integer"
    },
    "archived": {
      "type": "integer"
    },
    "completed": {
      "type": "integer"
    }
  },
  "description": "ColumnCardResponse contains counters from column's cards."
}
object summary.ColumnDataResponse
{
  "type": "object",
  "title": "ColumnDataResponse",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "cards": {
      "$ref": "#/components/schemas/summary.ColumnCardResponse"
    },
    "color": {
      "type": "string"
    },
    "estimatedTime": {
      "$ref": "#/components/schemas/summary.ColumnEstimatedResponse"
    }
  },
  "description": "ColumnDataResponse contains information of a specific column."
}
object summary.ColumnEstimatedResponse
{
  "type": "object",
  "title": "ColumnEstimatedResponse",
  "properties": {
    "total": {
      "type": "integer"
    },
    "active": {
      "type": "integer"
    },
    "archived": {
      "type": "integer"
    },
    "completed": {
      "type": "integer"
    }
  },
  "description": "ColumnEstimatedResponse contains estimated counters about the\ncolumns's state."
}
object summary.ColumnResponse
{
  "type": "object",
  "title": "ColumnResponse",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/summary.ColumnDataResponse"
      }
    },
    "count": {
      "type": "integer"
    }
  },
  "description": "ColumnResponse contains counters for columns."
}
object summary.EventResponse
{
  "type": "object",
  "title": "EventResponse",
  "properties": {
    "today": {
      "type": "integer"
    },
    "upcoming": {
      "type": "integer"
    }
  },
  "description": "EventResponse contains counters for events."
}
object summary.HealthResponse
{
  "type": "object",
  "title": "HealthResponse",
  "properties": {
    "0": {
      "type": "integer"
    },
    "1": {
      "type": "integer"
    },
    "2": {
      "type": "integer"
    },
    "3": {
      "type": "integer"
    }
  },
  "description": "HealthResponse contains counters for health."
}
object summary.MilestoneCountsResponse
{
  "type": "object",
  "title": "MilestoneCountsResponse",
  "properties": {
    "late": {
      "type": "integer"
    },
    "today": {
      "type": "integer"
    },
    "active": {
      "type": "integer"
    },
    "complete": {
      "type": "integer"
    },
    "upcoming": {
      "type": "integer"
    }
  },
  "description": "MilestoneCountsResponse contains counters for milestones."
}
object summary.MilestoneResponse
{
  "type": "object",
  "title": "MilestoneResponse",
  "properties": {
    "mine": {
      "$ref": "#/components/schemas/summary.MilestoneCountsResponse"
    },
    "everyone": {
      "$ref": "#/components/schemas/summary.MilestoneCountsResponse"
    }
  },
  "description": "MilestoneResponse contains groups of counter for milestones."
}
object summary.ProjectResponse
{
  "type": "object",
  "title": "ProjectResponse",
  "properties": {
    "time": {
      "$ref": "#/components/schemas/summary.TimeResponse"
    },
    "risks": {
      "$ref": "#/components/schemas/summary.RiskResponse"
    },
    "since": {
      "$ref": "#/components/schemas/summary.SinceResponse"
    },
    "tasks": {
      "$ref": "#/components/schemas/summary.ProjectTasksResponse"
    },
    "events": {
      "$ref": "#/components/schemas/summary.EventResponse"
    },
    "health": {
      "$ref": "#/components/schemas/summary.HealthResponse"
    },
    "unread": {
      "$ref": "#/components/schemas/summary.UnreadResponse"
    },
    "columns": {
      "$ref": "#/components/schemas/summary.ColumnResponse"
    },
    "milestones": {
      "$ref": "#/components/schemas/summary.MilestoneResponse"
    }
  },
  "description": "ProjectResponse contains all the information returned when sending\na GET request to the summary endpoint (project)."
}
object summary.ProjectTasksResponse
{
  "type": "object",
  "title": "ProjectTasksResponse",
  "properties": {
    "mine": {
      "$ref": "#/components/schemas/summary.TaskResponse"
    },
    "user": {
      "$ref": "#/components/schemas/summary.TaskResponse"
    },
    "everyone": {
      "$ref": "#/components/schemas/summary.TaskResponse"
    }
  },
  "description": "ProjectTasksResponse contains groups of counters tasks."
}
object summary.Response
{
  "type": "object",
  "title": "Response",
  "properties": {
    "time": {
      "$ref": "#/components/schemas/summary.TimeCounterResponse"
    },
    "risks": {
      "$ref": "#/components/schemas/summary.RiskResponse"
    },
    "since": {
      "$ref": "#/components/schemas/summary.SinceResponse"
    },
    "tasks": {
      "$ref": "#/components/schemas/summary.TaskResponse"
    },
    "events": {
      "$ref": "#/components/schemas/summary.EventResponse"
    },
    "health": {
      "$ref": "#/components/schemas/summary.HealthResponse"
    },
    "unread": {
      "$ref": "#/components/schemas/summary.UnreadResponse"
    },
    "columns": {
      "$ref": "#/components/schemas/summary.ColumnResponse"
    },
    "milestones": {
      "$ref": "#/components/schemas/summary.MilestoneCountsResponse"
    }
  },
  "description": "Response contains all the information returned when sending a GET\nrequest to the summary endpoint (dashboard)."
}
object summary.RiskResponse
{
  "type": "object",
  "title": "RiskResponse",
  "properties": {
    "open": {
      "type": "integer"
    },
    "total": {
      "type": "integer"
    },
    "closed": {
      "type": "integer"
    },
    "pending": {
      "type": "integer"
    }
  },
  "description": "RiskResponse contains counters for risks."
}
object summary.SinceResponse
{
  "type": "object",
  "title": "SinceResponse",
  "properties": {
    "events": {
      "type": "integer"
    },
    "dateTime": {
      "type": "string"
    },
    "tasksCreated": {
      "type": "integer"
    },
    "tasksComplete": {
      "type": "integer"
    }
  },
  "description": "SinceResponse contains counters for since."
}
object summary.TaskResponse
{
  "type": "object",
  "title": "TaskResponse",
  "properties": {
    "late": {
      "type": "integer"
    },
    "today": {
      "type": "integer"
    },
    "active": {
      "type": "integer"
    },
    "nodate": {
      "type": "integer"
    },
    "started": {
      "type": "integer"
    },
    "complete": {
      "type": "integer"
    },
    "upcoming": {
      "type": "integer"
    }
  },
  "description": "TaskResponse contains counters for tasks."
}
object summary.TimeCounterEstimateResponse
{
  "type": "object",
  "title": "TimeCounterEstimateResponse",
  "properties": {
    "totalMinsEstimated": {
      "type": "integer"
    },
    "activeMinsEstimated": {
      "type": "integer"
    },
    "completedMinsEstimated": {
      "type": "integer"
    },
    "totalWithTimeLoggedEstimatedMins": {
      "type": "integer"
    }
  },
  "description": "TimeCounterEstimateResponse contains estimate counters for times."
}
object summary.TimeCounterResponse
{
  "type": "object",
  "title": "TimeCounterResponse",
  "properties": {
    "totals": {
      "$ref": "#/components/schemas/summary.TimeCounterTotalResponse"
    },
    "estimates": {
      "$ref": "#/components/schemas/summary.TimeCounterEstimateResponse"
    }
  },
  "description": "TimeCounterResponse contains counters for times."
}
object summary.TimeCounterTotalResponse
{
  "type": "object",
  "title": "TimeCounterTotalResponse",
  "properties": {
    "totalMinsSum": {
      "type": "integer"
    },
    "billedMinsSum": {
      "type": "integer"
    },
    "billableMinsSum": {
      "type": "integer"
    },
    "nonBilledMinsSum": {
      "type": "integer"
    },
    "nonBillableMinsSum": {
      "type": "integer"
    }
  },
  "description": "TimeCounterTotalResponse contains total counters for times."
}
object summary.TimeResponse
{
  "type": "object",
  "title": "TimeResponse",
  "properties": {
    "all": {
      "$ref": "#/components/schemas/summary.TimeCounterResponse"
    },
    "mine": {
      "$ref": "#/components/schemas/summary.TimeCounterResponse"
    }
  },
  "description": "TimeResponse contains counters for times' groups."
}
object summary.UnreadResponse
{
  "type": "object",
  "title": "UnreadResponse",
  "properties": {
    "comments": {
      "type": "integer"
    },
    "messages": {
      "type": "integer"
    }
  },
  "description": "UnreadResponse contains counters for unread objects."
}
object tag.BulkDeleteRequest
{
  "type": "object",
  "title": "BulkDeleteRequest",
  "properties": {
    "tagIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "tagNames": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "description": "BulkDeleteRequest contains the ids of the tags that should be removed."
}
object tag.Request
{
  "type": "object",
  "title": "Request",
  "properties": {
    "tag": {
      "$ref": "#/components/schemas/tag.Tag"
    }
  },
  "description": "Request contains information of a tag to be created or updated."
}
object tag.Response
{
  "type": "object",
  "title": "Response",
  "properties": {
    "tag": {
      "$ref": "#/components/schemas/view.Tag"
    }
  },
  "description": "Response contains information about a specific tag."
}
object tag.Tag
{
  "type": "object",
  "title": "Tag",
  "properties": {
    "name": {
      "type": "string"
    },
    "color": {
      "type": "string"
    },
    "projectId": {
      "type": "integer"
    }
  },
  "description": "Tag contains all the information returned from a tag."
}
object tag.TagsResponse
{
  "type": "object",
  "title": "TagsResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "tags": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Tag"
      }
    },
    "included": {
      "type": "object",
      "properties": {
        "cards": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskCard"
          }
        },
        "tasks": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskV205"
          }
        },
        "columns": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.BoardColumn"
          }
        }
      }
    }
  },
  "description": "TagsResponse contains information about a group of tags."
}
object task.Card
{
  "type": "object",
  "title": "Card",
  "properties": {
    "columnId": {
      "type": "integer"
    }
  },
  "description": "Card stores information about the card created with the task."
}
object task.CustomFields
{
  "type": "object",
  "title": "CustomFields",
  "properties": {
    "Values": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/value.CustomFieldValue"
      }
    }
  },
  "description": "CustomFields is the custom fields type."
}
object task.File
{
  "type": "object",
  "title": "File",
  "properties": {
    "id": {
      "type": "integer"
    },
    "categoryId": {
      "type": "integer"
    }
  },
  "description": "File stores information about a uploaded file."
}
object task.Included
{
  "type": "object",
  "title": "Included",
  "properties": {
    "tags": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Tag"
      }
    },
    "cards": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.TaskCard"
      }
    },
    "files": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.ProjectFileV205"
      }
    },
    "tasks": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.TaskV205"
      }
    },
    "teams": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Team"
      }
    },
    "users": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.User"
      }
    },
    "proofs": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Proof"
      }
    },
    "stages": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Stage"
      }
    },
    "timers": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Timer"
      }
    },
    "columns": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.BoardColumn"
      }
    },
    "comments": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Comment"
      }
    },
    "projects": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.ProjectV205"
      }
    },
    "companies": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Company"
      }
    },
    "lockdowns": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Lockdown"
      }
    },
    "tasklists": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Tasklist"
      }
    },
    "workflows": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Workflow"
      }
    },
    "milestones": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Milestone"
      }
    },
    "taskgroups": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Taskgroup"
      }
    },
    "timeTotals": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.TaskTimeTotals"
      }
    },
    "customfields": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.CustomField"
      }
    },
    "subtaskStats": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.TaskStats"
      }
    },
    "taskSequences": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.TaskSequence"
      }
    },
    "customfieldTasks": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.CustomFieldValueTask"
      }
    },
    "projectCategories": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.ProjectCategory"
      }
    },
    "projectPermissions": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.ProjectPermissions"
      }
    }
  },
  "description": "Included is the task sideloads"
}
object task.Options
{
  "type": "object",
  "title": "Options",
  "properties": {
    "notify": {
      "type": "boolean"
    },
    "isTemplate": {
      "type": "boolean"
    },
    "fireWebhook": {
      "type": "boolean"
    },
    "logActivity": {
      "type": "boolean"
    },
    "useDefaults": {
      "type": "boolean"
    },
    "pushSubtasks": {
      "type": "boolean"
    },
    "everyoneMustDo": {
      "type": "boolean"
    },
    "pushDependents": {
      "type": "boolean"
    },
    "appendAssignees": {
      "type": "boolean"
    },
    "parseInlineTags": {
      "type": "boolean"
    },
    "useNotifyViaTWIM": {
      "type": "boolean"
    },
    "checkInvalidusers": {
      "type": "boolean"
    },
    "shiftProjectDates": {
      "type": "boolean"
    },
    "positionAfterTaskId": {
      "type": "integer"
    }
  },
  "description": "Options contains any options which can be set\nfor the task request"
}
object task.PendingFile
{
  "type": "object",
  "title": "PendingFile",
  "properties": {
    "reference": {
      "type": "string"
    },
    "categoryId": {
      "type": "integer"
    }
  },
  "description": "PendingFile stores information about a file uploaded on-the-fly."
}
object task.Predecessor
{
  "type": "object",
  "title": "Predecessor",
  "properties": {
    "id": {
      "type": "integer"
    },
    "type": {
      "type": "string"
    }
  },
  "description": "Predecessor stores information about task predecessors."
}
object task.Reminder
{
  "type": "object",
  "title": "Reminder",
  "properties": {
    "note": {
      "type": "string"
    },
    "type": {
      "type": "string"
    },
    "userId": {
      "type": "integer"
    },
    "remindAt": {
      "type": "string"
    },
    "isRelative": {
      "type": "boolean"
    },
    "relativeNumberDays": {
      "type": "integer"
    }
  },
  "description": "Reminder stores all necessary information to create a task reminder."
}
object task.RepeatOptions
{
  "type": "object",
  "title": "RepeatOptions",
  "properties": {
    "rrule": {
      "type": "string",
      "title": "RRule",
      "description": "Adds the RRule definition for repeating tasks. It replaces all other repeating fields."
    },
    "endsAt": {
      "$ref": "#/components/schemas/payload.NullableDate"
    },
    "duration": {
      "type": "integer"
    },
    "frequency": {
      "$ref": "#/components/schemas/payload.NullableTaskRepeatFrequency"
    },
    "editOption": {
      "type": "string"
    },
    "selectedDays": {
      "$ref": "#/components/schemas/payload.NullableWorkingHourEntryWeekdays"
    },
    "monthlyRepeatType": {
      "$ref": "#/components/schemas/payload.NullableTaskRepeatMonthlyType"
    }
  },
  "description": "RepeatOptions stores recurring information for the task."
}
object task.Request
{
  "type": "object",
  "title": "Request",
  "properties": {
    "card": {
      "$ref": "#/components/schemas/task.Card"
    },
    "tags": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/tag.Tag"
      }
    },
    "task": {
      "$ref": "#/components/schemas/task.Task"
    },
    "workflows": {
      "$ref": "#/components/schemas/task.Workflows"
    },
    "attachments": {
      "type": "object",
      "properties": {
        "files": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/task.File"
          }
        },
        "pendingFiles": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/task.PendingFile"
          }
        }
      }
    },
    "taskOptions": {
      "$ref": "#/components/schemas/task.Options"
    },
    "predecessors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/task.Predecessor"
      }
    },
    "attachmentOptions": {
      "type": "object",
      "properties": {
        "removeOtherFiles": {
          "type": "boolean"
        }
      }
    }
  },
  "description": "Request contains information of a task to be created or updated."
}
object task.Task
{
  "type": "object",
  "title": "Task",
  "properties": {
    "name": {
      "type": "string"
    },
    "dueAt": {
      "$ref": "#/components/schemas/payload.NullableDate"
    },
    "status": {
      "type": "string"
    },
    "tagIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "private": {
      "type": "boolean"
    },
    "startAt": {
      "$ref": "#/components/schemas/payload.NullableDate"
    },
    "priority": {
      "$ref": "#/components/schemas/payload.NullableTaskPriority"
    },
    "progress": {
      "type": "integer"
    },
    "ticketId": {
      "type": "integer"
    },
    "assignees": {
      "$ref": "#/components/schemas/payload.UserGroups"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "reminders": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/task.Reminder"
      }
    },
    "crmDealIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "tasklistId": {
      "type": "integer"
    },
    "completedAt": {
      "type": "string"
    },
    "completedBy": {
      "type": "integer"
    },
    "description": {
      "type": "string"
    },
    "taskgroupId": {
      "type": "integer"
    },
    "customFields": {
      "$ref": "#/components/schemas/task.CustomFields"
    },
    "parentTaskId": {
      "type": "integer"
    },
    "attachmentIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "grantAccessTo": {
      "$ref": "#/components/schemas/payload.UserGroups"
    },
    "repeatOptions": {
      "$ref": "#/components/schemas/task.RepeatOptions"
    },
    "hasDeskTickets": {
      "type": "boolean"
    },
    "changeFollowers": {
      "$ref": "#/components/schemas/payload.UserGroups"
    },
    "originalDueDate": {
      "$ref": "#/components/schemas/payload.NullableDate"
    },
    "commentFollowers": {
      "$ref": "#/components/schemas/payload.UserGroups"
    },
    "estimatedMinutes": {
      "type": "integer"
    },
    "templateRoleName": {
      "type": "string"
    },
    "descriptionContentType": {
      "type": "string"
    }
  },
  "description": "Task contains all the information returned from a task."
}
object task.Workflows
{
  "type": "object",
  "title": "Workflows",
  "properties": {
    "stageId": {
      "type": "integer"
    },
    "workflowId": {
      "type": "integer"
    },
    "positionAfterTask": {
      "type": "integer"
    }
  },
  "description": "Workflows stores information about where the task lives in the workflow"
}
object task.responseV205
{
  "type": "object",
  "title": "responseV205",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "task": {
      "$ref": "#/components/schemas/view.TaskV205"
    },
    "affected": {
      "$ref": "#/components/schemas/view.TaskAffectedV205"
    },
    "included": {
      "$ref": "#/components/schemas/task.Included"
    }
  }
}
object task.tasksResponseV205
{
  "type": "object",
  "title": "tasksResponseV205",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "tasks": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.TaskV205"
      }
    },
    "included": {
      "$ref": "#/components/schemas/task.Included"
    }
  }
}
object tasklist.Response
{
  "type": "object",
  "title": "Response",
  "properties": {
    "included": {
      "type": "object",
      "properties": {
        "tasks": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.IncludedTask"
          }
        },
        "teams": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Team"
          }
        },
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "columns": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.BoardColumn"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.IncludedProject"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "lockdowns": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Lockdown"
          }
        },
        "workflows": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Workflow"
          }
        },
        "milestones": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Milestone"
          }
        },
        "customfields": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.CustomField"
          }
        },
        "notifications": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TasklistBudgetNotification"
          }
        },
        "workflowStages": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Stage"
          }
        },
        "tasklistBudgets": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TasklistBudget"
          }
        },
        "customfieldTasks": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.CustomFieldValueTask"
          }
        },
        "tasklistTaskStats": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskStats"
          }
        },
        "defaultTaskReminders": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskReminder"
          }
        }
      }
    },
    "tasklist": {
      "$ref": "#/components/schemas/view.Tasklist"
    }
  },
  "description": "Response contains information about a specific tasklist."
}
object tasklist.TasklistsResponse
{
  "type": "object",
  "title": "TasklistsResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "type": "object",
      "properties": {
        "tasks": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.IncludedTask"
          }
        },
        "teams": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Team"
          }
        },
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "columns": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.BoardColumn"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.IncludedProject"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "lockdowns": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Lockdown"
          }
        },
        "workflows": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Workflow"
          }
        },
        "milestones": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Milestone"
          }
        },
        "customfields": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.CustomField"
          }
        },
        "notifications": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TasklistBudgetNotification"
          }
        },
        "workflowStages": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Stage"
          }
        },
        "tasklistBudgets": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TasklistBudget"
          }
        },
        "customfieldTasks": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.CustomFieldValueTask"
          }
        },
        "tasklistTaskStats": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskStats"
          }
        },
        "defaultTaskReminders": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskReminder"
          }
        }
      }
    },
    "tasklists": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Tasklist"
      }
    }
  },
  "description": "TasklistsResponse contains information about a group of tasklists."
}
object tasklistbudget.Budget
{
  "type": "object",
  "title": "Budget",
  "properties": {
    "id": {
      "type": "integer"
    },
    "capacity": {
      "type": "integer"
    },
    "tasklist": {
      "$ref": "#/components/schemas/tasklistbudget.tasklist"
    },
    "notifications": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/tasklistbudget.notification"
      }
    }
  },
  "description": "Budget contains all the information returned from a budget."
}
object tasklistbudget.BudgetResponse
{
  "type": "object",
  "title": "BudgetResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "tasklistBudget": {
      "$ref": "#/components/schemas/view.TasklistBudget"
    }
  },
  "description": "BudgetResponse contains information about a group of budgets."
}
object tasklistbudget.BudgetsResponse
{
  "type": "object",
  "title": "BudgetsResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "type": "object",
      "properties": {
        "teams": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Team"
          }
        },
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "tasklists": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tasklist"
          }
        },
        "notifications": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TasklistBudgetNotification"
          }
        },
        "projectBudgets": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectBudget"
          }
        }
      }
    },
    "tasklistBudgets": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.TasklistBudget"
      }
    }
  },
  "description": "BudgetsResponse contains information about a group of budgets."
}
object tasklistbudget.BulkAddBudgetRequest
{
  "type": "object",
  "title": "BulkAddBudgetRequest",
  "properties": {
    "tasklistBudgets": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/tasklistbudget.Budget"
      }
    },
    "tasklistBudgetsOptions": {
      "$ref": "#/components/schemas/tasklistbudget.RequestOptions"
    }
  },
  "description": "BulkAddBudgetRequest structure hold information needed to add\nor update task list budgets along with request options"
}
object tasklistbudget.PatchBudgetRequest
{
  "type": "object",
  "title": "PatchBudgetRequest",
  "properties": {
    "tasklistBudget": {
      "$ref": "#/components/schemas/tasklistbudget.Budget"
    },
    "tasklistBudgetOptions": {
      "$ref": "#/components/schemas/tasklistbudget.RequestOptions"
    }
  },
  "description": "PatchBudgetRequest Structure for the edit budget PATCH request"
}
object tasklistbudget.RequestOptions
{
  "type": "object",
  "title": "RequestOptions",
  "properties": {
    "fireWebhook": {
      "type": "boolean"
    },
    "logActivity": {
      "type": "boolean"
    },
    "useNotifyViaTWIM": {
      "type": "boolean"
    }
  },
  "description": "RequestOptions has options for events related to requests"
}
object tasklistbudget.company
{
  "type": "object",
  "title": "company",
  "properties": {
    "id": {
      "type": "integer"
    },
    "type": {
      "type": "string"
    }
  }
}
object tasklistbudget.notification
{
  "type": "object",
  "title": "notification",
  "properties": {
    "id": {
      "type": "integer"
    },
    "teams": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/tasklistbudget.team"
      }
    },
    "users": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/tasklistbudget.user"
      }
    },
    "companies": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/tasklistbudget.company"
      }
    },
    "capacityThreshold": {
      "type": "number"
    },
    "notificationMedium": {
      "type": "string"
    }
  }
}
object tasklistbudget.tasklist
{
  "type": "object",
  "title": "tasklist",
  "properties": {
    "id": {
      "type": "integer"
    },
    "type": {
      "type": "string"
    }
  }
}
object tasklistbudget.team
{
  "type": "object",
  "title": "team",
  "properties": {
    "id": {
      "type": "integer"
    },
    "type": {
      "type": "string"
    }
  }
}
object tasklistbudget.user
{
  "type": "object",
  "title": "user",
  "properties": {
    "id": {
      "type": "integer"
    },
    "type": {
      "type": "string"
    }
  }
}
object timelog.CompanyTimelogsResponse
{
  "type": "object",
  "title": "CompanyTimelogsResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "type": "object",
      "properties": {
        "tags": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tag"
          }
        },
        "tasks": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskV205"
          }
        },
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "tasklists": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tasklist"
          }
        },
        "userRates": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.EffectiveUserRate"
          }
        }
      }
    },
    "timelogs": {
      "type": "object"
    }
  },
  "description": "CompanyTimelogsResponse contains information about a group of timelogs, grouped by company ID."
}
object timelog.Request
{
  "type": "object",
  "title": "Request",
  "properties": {
    "tags": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/tag.Tag"
      }
    },
    "timelog": {
      "$ref": "#/components/schemas/timelog.Timelog"
    },
    "timelogOptions": {
      "type": "object",
      "properties": {
        "fireWebhook": {
          "type": "boolean"
        },
        "logActivity": {
          "type": "boolean"
        },
        "parseInlineTags": {
          "type": "boolean"
        },
        "markTaskComplete": {
          "type": "boolean"
        },
        "useNotifyViaTWIM": {
          "type": "boolean"
        }
      }
    }
  },
  "description": "Request contains information of a timelog to be created or updated."
}
object timelog.Response
{
  "type": "object",
  "title": "Response",
  "properties": {
    "timelog": {
      "$ref": "#/components/schemas/view.Timelog"
    },
    "included": {
      "type": "object",
      "properties": {
        "tags": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tag"
          }
        },
        "tasks": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskV205"
          }
        },
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "tasklists": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tasklist"
          }
        },
        "userRates": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.EffectiveUserRate"
          }
        }
      }
    }
  },
  "description": "Response contains information about a specific timelog."
}
object timelog.Timelog
{
  "type": "object",
  "title": "Timelog",
  "properties": {
    "date": {
      "$ref": "#/components/schemas/payload.Date"
    },
    "time": {
      "$ref": "#/components/schemas/payload.Time"
    },
    "hours": {
      "type": "integer"
    },
    "isUtc": {
      "type": "boolean"
    },
    "tagIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "taskId": {
      "type": "integer"
    },
    "userId": {
      "type": "integer"
    },
    "minutes": {
      "type": "integer"
    },
    "ticketId": {
      "type": "integer"
    },
    "invoiceId": {
      "type": "integer"
    },
    "projectId": {
      "type": "integer"
    },
    "isBillable": {
      "type": "boolean"
    },
    "description": {
      "type": "string"
    },
    "hasStartTime": {
      "type": "boolean"
    }
  },
  "description": "Timelog contains all the information returned from a timelog."
}
object timelog.TimelogsResponse
{
  "type": "object",
  "title": "TimelogsResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "type": "object",
      "properties": {
        "tags": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tag"
          }
        },
        "tasks": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskV205"
          }
        },
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "tasklists": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tasklist"
          }
        },
        "userRates": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.EffectiveUserRate"
          }
        }
      }
    },
    "timelogs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Timelog"
      }
    }
  },
  "description": "TimelogsResponse contains information about a group of timelogs."
}
object timelog.TotalsResponse
{
  "type": "object",
  "title": "TotalsResponse",
  "properties": {
    "subTasks": {
      "$ref": "#/components/schemas/view.TimelogTotalsSubtasks"
    },
    "time-totals": {
      "$ref": "#/components/schemas/view.TimelogTotals"
    }
  },
  "description": "TotalsResponse contains information about timelog totals."
}
object timer.DeleteRequest
{
  "type": "object",
  "title": "DeleteRequest",
  "properties": {
    "hardDelete": {
      "type": "boolean"
    }
  },
  "description": "DeleteRequest contains the whether or not a timer should be hard deleted\nor soft deleted. Hard delete will remove the timer row from the DB and\nremove its timer intervals. Soft delete will just mark it as deleted."
}
object timer.Request
{
  "type": "object",
  "title": "Request",
  "properties": {
    "timer": {
      "$ref": "#/components/schemas/timer.Timer"
    }
  },
  "description": "Request contains information of a timer to be created or updated."
}
object timer.Response
{
  "type": "object",
  "title": "Response",
  "properties": {
    "timer": {
      "$ref": "#/components/schemas/view.Timer"
    },
    "included": {
      "type": "object",
      "properties": {
        "tasks": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskV205"
          }
        },
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        },
        "tasklists": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tasklist"
          }
        }
      }
    }
  },
  "description": "Response contains the information returned when sending a PUT/POST\nrequest to the timers endpoint, or GET request for a single item by ID"
}
object timer.Timer
{
  "type": "object",
  "title": "Timer",
  "properties": {
    "taskId": {
      "type": "integer"
    },
    "seconds": {
      "type": "integer",
      "description": "only valid for POST requests"
    },
    "isRunning": {
      "type": "boolean"
    },
    "projectId": {
      "type": "integer"
    },
    "isBillable": {
      "type": "boolean"
    },
    "description": {
      "type": "string"
    },
    "stopRunningTimers": {
      "type": "boolean"
    }
  },
  "description": "Timer contains all the information returned from a timer."
}
object timer.TimersResponse
{
  "type": "object",
  "title": "TimersResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "timers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Timer"
      }
    },
    "included": {
      "type": "object",
      "properties": {
        "tasks": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskV205"
          }
        },
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        },
        "tasklists": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tasklist"
          }
        }
      }
    }
  },
  "description": "TimersResponse contains all the information returned when sending a GET\nrequest to the timers endpoint."
}
object timesheet.MyTimesheetsResponse
{
  "type": "object",
  "title": "MyTimesheetsResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "type": "object",
      "properties": {
        "tasks": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskV205"
          }
        },
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        },
        "companies": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Company"
          }
        },
        "tasklists": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.Tasklist"
          }
        },
        "eventTypes": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.LegacyCalendarEventType"
          }
        },
        "subtaskStats": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TaskStats"
          }
        },
        "workingHours": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.WorkingHour"
          }
        },
        "unavailableTimes": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.LegacyUnavailableTime"
          }
        },
        "projectPermissions": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectPermissions"
          }
        },
        "workingHourEntries": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.WorkingHourEntry"
          }
        },
        "timesheetCustomRows": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.TimesheetCustomRow"
          }
        }
      }
    },
    "timesheets": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.MyTimesheet"
      }
    },
    "unavailableTimes": {
      "$ref": "#/components/schemas/view.UnavailableTimes"
    }
  },
  "description": "MyTimesheetsResponse contains timesheets list, includes and metadata."
}
object timesheet.MyTimesheetsTotals
{
  "type": "object",
  "title": "MyTimesheetsTotals",
  "properties": {
    "total": {
      "type": "integer"
    },
    "dailyTotals": {
      "type": "object"
    }
  },
  "description": "MyTimesheetsTotals contains the daily totals and total minutes"
}
object timesheet.MyTimesheetsTotalsResponse
{
  "type": "object",
  "title": "MyTimesheetsTotalsResponse",
  "properties": {
    "myTimesheetsTotals": {
      "$ref": "#/components/schemas/timesheet.MyTimesheetsTotals"
    }
  },
  "description": "MyTimesheetsTotalsResponse contains timesheets list, includes and metadata."
}
object unbilled.ProjectMetricUnbilledResponse
{
  "type": "object",
  "title": "ProjectMetricUnbilledResponse",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "value": {
          "type": "integer"
        }
      }
    }
  },
  "description": "ProjectMetricUnbilledResponse contains information about a group of unbilled\ninvoices."
}
object update.ProjectUpdatesResponse
{
  "type": "object",
  "title": "ProjectUpdatesResponse",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "type": "object",
      "properties": {
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        },
        "projects": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.ProjectV205"
          }
        }
      }
    },
    "projectUpdates": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.ProjectUpdate"
      }
    }
  },
  "description": "ProjectUpdatesResponse contains information about a group of updates."
}
object utilization.Response
{
  "type": "object",
  "title": "Response",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "type": "object",
      "properties": {
        "users": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/components/schemas/view.User"
          }
        }
      }
    },
    "utilization": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.UserUtilization"
      }
    }
  },
  "description": "Response contains information about a specific availability."
}
object value.CustomFieldValue
{
  "type": "object",
  "title": "CustomFieldValue",
  "properties": {
    "value": {},
    "countryCode": {
      "type": "string"
    },
    "customfieldId": {
      "type": "integer"
    },
    "currencySymbol": {
      "type": "string"
    },
    "urlTextToDisplay": {
      "type": "string"
    }
  },
  "description": "CustomFieldValue contains all the information returned from a customfield."
}
object value.EditCustomFieldValue
{
  "type": "object",
  "title": "EditCustomFieldValue",
  "properties": {
    "id": {
      "type": "integer"
    },
    "value": {},
    "countryCode": {
      "type": "string"
    },
    "customfieldId": {
      "type": "integer"
    },
    "currencySymbol": {
      "type": "string"
    },
    "urlTextToDisplay": {
      "type": "string"
    }
  },
  "description": "EditCustomFieldValue contains all the information to update a project\ncustom field value."
}
object value.ResponseIncluded
{
  "type": "object",
  "title": "ResponseIncluded",
  "properties": {
    "tasks": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.TaskV205"
      }
    },
    "projects": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.ProjectV205"
      }
    },
    "companies": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.Company"
      }
    },
    "customfields": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.CustomField"
      }
    }
  },
  "description": "ResponseIncluded is included in the response."
}
object value.bulkDeleteRequestCompany
{
  "type": "object",
  "title": "bulkDeleteRequestCompany",
  "properties": {
    "customfieldCompanyIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    }
  }
}
object value.bulkDeleteRequestProject
{
  "type": "object",
  "title": "bulkDeleteRequestProject",
  "properties": {
    "customfieldProjectIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    }
  }
}
object value.bulkDeleteRequestTask
{
  "type": "object",
  "title": "bulkDeleteRequestTask",
  "properties": {
    "customfieldTaskIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    }
  }
}
object value.bulkUpdateRequestCompany
{
  "type": "object",
  "title": "bulkUpdateRequestCompany",
  "properties": {
    "customfieldCompanies": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/value.EditCustomFieldValue"
      }
    }
  }
}
object value.bulkUpdateRequestProject
{
  "type": "object",
  "title": "bulkUpdateRequestProject",
  "properties": {
    "customfieldProjects": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/value.EditCustomFieldValue"
      }
    }
  }
}
object value.bulkUpdateRequestTask
{
  "type": "object",
  "title": "bulkUpdateRequestTask",
  "properties": {
    "customfieldTasks": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/value.EditCustomFieldValue"
      }
    }
  }
}
object value.requestCompany
{
  "type": "object",
  "title": "requestCompany",
  "properties": {
    "customfieldCompany": {
      "$ref": "#/components/schemas/value.CustomFieldValue"
    }
  }
}
object value.requestProject
{
  "type": "object",
  "title": "requestProject",
  "properties": {
    "customfieldProject": {
      "$ref": "#/components/schemas/value.CustomFieldValue"
    }
  }
}
object value.requestTask
{
  "type": "object",
  "title": "requestTask",
  "properties": {
    "customfieldTask": {
      "$ref": "#/components/schemas/value.CustomFieldValue"
    }
  }
}
object value.responseCompany
{
  "type": "object",
  "title": "responseCompany",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "$ref": "#/components/schemas/value.ResponseIncluded"
    },
    "customfieldCompany": {
      "$ref": "#/components/schemas/view.CustomFieldValueCompany"
    }
  }
}
object value.responseProject
{
  "type": "object",
  "title": "responseProject",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "$ref": "#/components/schemas/value.ResponseIncluded"
    },
    "customfieldProject": {
      "$ref": "#/components/schemas/view.CustomFieldValueProject"
    }
  }
}
object value.responseTask
{
  "type": "object",
  "title": "responseTask",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "$ref": "#/components/schemas/value.ResponseIncluded"
    },
    "customfieldTask": {
      "$ref": "#/components/schemas/view.CustomFieldValueTask"
    }
  }
}
object value.valuesResponseCompany
{
  "type": "object",
  "title": "valuesResponseCompany",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "$ref": "#/components/schemas/value.ResponseIncluded"
    },
    "customfieldCompanies": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.CustomFieldValueCompany"
      }
    }
  }
}
object value.valuesResponseProject
{
  "type": "object",
  "title": "valuesResponseProject",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "$ref": "#/components/schemas/value.ResponseIncluded"
    },
    "customfieldProjects": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.CustomFieldValueProject"
      }
    }
  }
}
object value.valuesResponseTask
{
  "type": "object",
  "title": "valuesResponseTask",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/view.Meta"
    },
    "included": {
      "$ref": "#/components/schemas/value.ResponseIncluded"
    },
    "customfieldTasks": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.CustomFieldValueTask"
      }
    }
  }
}
object view.ActivityLog
{
  "type": "object",
  "title": "ActivityLog",
  "properties": {
    "id": {
      "type": "integer"
    },
    "link": {
      "type": "string"
    },
    "user": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "datetime": {
      "type": "string"
    },
    "itemLink": {
      "type": "string"
    },
    "itemType": {
      "type": "string"
    },
    "latestType": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "extraDescription": {
      "type": "string"
    }
  },
  "description": "ActivityLog contains all the information returned from a activityLog."
}
object view.Assignee
{
  "type": "object",
  "title": "Assignee",
  "properties": {
    "id": {
      "type": "integer"
    },
    "role": {
      "type": "string"
    },
    "user": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "decision": {
      "type": "string"
    },
    "isExternal": {
      "type": "boolean"
    }
  },
  "description": "Assignee contains assignee information."
}
object view.Audit
{
  "type": "object",
  "title": "Audit",
  "properties": {
    "after": {},
    "field": {
      "type": "string"
    },
    "before": {}
  },
  "description": "Audit represents the changes of a field."
}
object view.Banner
{
  "type": "object",
  "title": "Banner",
  "properties": {
    "x": {
      "type": "number"
    },
    "y": {
      "type": "number"
    },
    "url": {
      "type": "string"
    },
    "accentColor": {
      "type": "string"
    },
    "primaryColor": {
      "type": "string"
    }
  },
  "description": "Banner contains all the information returned from a form banner."
}
object view.BoardColumn
{
  "type": "object",
  "title": "BoardColumn",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "sort": {
      "type": "string"
    },
    "color": {
      "type": "string"
    },
    "stats": {
      "$ref": "#/components/schemas/view.ColumnStats"
    },
    "deleted": {
      "type": "boolean"
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "settings": {
      "$ref": "#/components/schemas/view.BoardColumnSettings"
    },
    "createdAt": {
      "type": "string"
    },
    "deletedAt": {
      "type": "string"
    },
    "sortOrder": {
      "type": "string"
    },
    "updatedAt": {
      "type": "string"
    },
    "hasTriggers": {
      "type": "boolean"
    },
    "displayOrder": {
      "type": "integer"
    },
    "defaultTasklist": {
      "$ref": "#/components/schemas/view.Relationship"
    }
  },
  "description": "BoardColumn contains all the information returned from a column."
}
object view.BoardColumnSettings
{
  "type": "object",
  "title": "BoardColumnSettings",
  "properties": {
    "name": {
      "type": "boolean"
    },
    "tags": {
      "type": "boolean"
    },
    "time": {
      "type": "boolean"
    },
    "endAt": {
      "type": "boolean"
    },
    "files": {
      "type": "boolean"
    },
    "avatar": {
      "type": "boolean"
    },
    "private": {
      "type": "boolean"
    },
    "startAt": {
      "type": "boolean"
    },
    "tickets": {
      "type": "boolean"
    },
    "assignee": {
      "type": "boolean"
    },
    "comments": {
      "type": "boolean"
    },
    "priority": {
      "type": "boolean"
    },
    "progress": {
      "type": "boolean"
    },
    "tasklist": {
      "type": "boolean"
    },
    "followers": {
      "type": "boolean"
    },
    "recurring": {
      "type": "boolean"
    },
    "reminders": {
      "type": "boolean"
    },
    "subtasktext": {
      "type": "boolean"
    },
    "dependencies": {
      "type": "boolean"
    },
    "subtasklabel": {
      "type": "boolean"
    },
    "estimatedtime": {
      "type": "boolean"
    }
  },
  "description": "BoardColumnSettings contains all the settings for a column."
}
object view.CategoryTotals
{
  "type": "object",
  "title": "CategoryTotals",
  "properties": {
    "categorizedItems": {
      "type": "integer"
    },
    "uncategorizedItems": {
      "type": "integer"
    }
  },
  "description": "CategoryTotals contains all the category totals."
}
object view.ColumnStats
{
  "type": "object",
  "title": "ColumnStats",
  "properties": {
    "total": {
      "type": "integer"
    },
    "active": {
      "type": "integer"
    },
    "completed": {
      "type": "integer"
    },
    "estimatedTime": {
      "type": "integer"
    }
  },
  "description": "ColumnStats contains stats about a column"
}
object view.Comment
{
  "type": "object",
  "title": "Comment",
  "properties": {
    "id": {
      "type": "integer"
    },
    "title": {
      "type": "string"
    },
    "object": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "objectId": {
      "type": "integer"
    },
    "objectType": {
      "type": "string"
    }
  },
  "description": "Comment contains all the information returned from a comment."
}
object view.Company
{
  "type": "object",
  "title": "Company",
  "properties": {
    "id": {
      "type": "integer"
    },
    "cid": {
      "type": "string"
    },
    "fax": {
      "type": "string"
    },
    "zip": {
      "type": "string"
    },
    "city": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "tags": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "phone": {
      "type": "string"
    },
    "state": {
      "type": "string"
    },
    "stats": {
      "$ref": "#/components/schemas/view.CompanyStats"
    },
    "status": {
      "type": "string"
    },
    "clients": {
      "type": "integer"
    },
    "isOwner": {
      "type": "boolean"
    },
    "logoUrl": {
      "type": "string"
    },
    "website": {
      "type": "string"
    },
    "accounts": {
      "type": "integer"
    },
    "contacts": {
      "type": "integer"
    },
    "emailOne": {
      "type": "string"
    },
    "emailTwo": {
      "type": "string"
    },
    "industry": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "createdAt": {
      "type": "string"
    },
    "updatedAt": {
      "type": "string"
    },
    "addressOne": {
      "type": "string"
    },
    "addressTwo": {
      "type": "string"
    },
    "emailThree": {
      "type": "string"
    },
    "industryId": {
      "type": "integer"
    },
    "countryCode": {
      "type": "string"
    },
    "profileText": {
      "type": "string"
    },
    "privateNotes": {
      "type": "string"
    },
    "canSeePrivate": {
      "type": "boolean"
    },
    "collaborators": {
      "type": "integer"
    },
    "companyUpdate": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "profitability": {
      "$ref": "#/components/schemas/view.ProfitDetails"
    },
    "companyNameUrl": {
      "type": "string"
    },
    "clientManagedBy": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "privateNotesText": {
      "type": "string"
    },
    "budgetDistribution": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/entity.ProjectBudgetRange"
      }
    }
  },
  "description": "Company contains all the information returned from a company."
}
object view.CompanyStats
{
  "type": "object",
  "title": "CompanyStats",
  "properties": {
    "taskCount": {
      "type": "integer"
    },
    "projectCount": {
      "type": "integer"
    },
    "unreadEmailCount": {
      "type": "integer"
    },
    "taskCompleteCount": {
      "type": "integer"
    }
  },
  "description": "CompanyStats tracks a companies project and task counts"
}
object view.CompanyUpdate
{
  "type": "object",
  "title": "CompanyUpdate",
  "properties": {
    "id": {
      "type": "integer"
    },
    "text": {
      "type": "string"
    },
    "active": {
      "type": "boolean"
    },
    "health": {
      "type": "integer"
    },
    "company": {
      "$ref": "#/components/schemas/view.Relationship"
    }
  },
  "description": "CompanyUpdate represents a company update"
}
object view.Content
{
  "type": "object",
  "title": "Content",
  "properties": {
    "logo": {
      "$ref": "#/components/schemas/view.Logo"
    },
    "name": {
      "type": "string"
    },
    "state": {
      "type": "string"
    },
    "banner": {
      "$ref": "#/components/schemas/view.Banner"
    },
    "version": {
      "type": "integer"
    },
    "definition": {
      "type": "string"
    },
    "description": {
      "type": "string"
    }
  },
  "description": "Content contains all the information returned from a form token."
}
object view.Country
{
  "type": "object",
  "title": "Country",
  "properties": {
    "eu": {
      "type": "boolean"
    },
    "code": {
      "type": "string"
    },
    "country": {
      "type": "string"
    },
    "vatName": {
      "type": "string"
    },
    "phoneCode": {
      "type": "string"
    },
    "vatPercent": {
      "type": "integer"
    }
  },
  "description": "Country represents all the information returned from a country."
}
object view.CustomField
{
  "type": "object",
  "title": "CustomField",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "type": {
      "type": "string"
    },
    "entity": {
      "type": "string"
    },
    "deleted": {
      "type": "boolean"
    },
    "formula": {
      "type": "string"
    },
    "groupId": {
      "type": "integer"
    },
    "options": {},
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "required": {
      "type": "boolean"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "deletedAt": {
      "type": "string"
    },
    "deletedBy": {
      "type": "integer"
    },
    "isPrivate": {
      "type": "boolean"
    },
    "projectId": {
      "type": "integer"
    },
    "updatedAt": {
      "type": "string"
    },
    "updatedBy": {
      "type": "integer"
    },
    "description": {
      "type": "string"
    },
    "currencyCode": {
      "type": "string"
    },
    "visibilities": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "createdByUserId": {
      "type": "integer"
    },
    "deletedByUserId": {
      "type": "integer"
    },
    "updatedByUserId": {
      "type": "integer"
    }
  },
  "description": "CustomField contains all the information returned from a custom field."
}
object view.CustomFieldValueCompany
{
  "type": "object",
  "title": "CustomFieldValueCompany",
  "properties": {
    "id": {
      "type": "integer"
    },
    "value": {},
    "company": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "companyId": {
      "type": "integer"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "countryCode": {
      "type": "string"
    },
    "customfield": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "customfieldId": {
      "type": "integer"
    },
    "currencySymbol": {
      "type": "string"
    },
    "urlTextToDisplay": {
      "type": "string"
    }
  },
  "description": "CustomFieldValueCompany is a company custom field value."
}
object view.CustomFieldValueProject
{
  "type": "object",
  "title": "CustomFieldValueProject",
  "properties": {
    "id": {
      "type": "integer"
    },
    "value": {},
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "projectId": {
      "type": "integer"
    },
    "countryCode": {
      "type": "string"
    },
    "customfield": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "customfieldId": {
      "type": "integer"
    },
    "currencySymbol": {
      "type": "string"
    },
    "urlTextToDisplay": {
      "type": "string"
    }
  },
  "description": "CustomFieldValueProject is a project custom field value."
}
object view.CustomFieldValueTask
{
  "type": "object",
  "title": "CustomFieldValueTask",
  "properties": {
    "id": {
      "type": "integer"
    },
    "task": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "value": {},
    "taskId": {
      "type": "integer"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "countryCode": {
      "type": "string"
    },
    "customfield": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "customfieldId": {
      "type": "integer"
    },
    "currencySymbol": {
      "type": "string"
    },
    "urlTextToDisplay": {
      "type": "string"
    }
  },
  "description": "CustomFieldValueTask is a task custom field value."
}
object view.Date
{
  "type": "object",
  "title": "Date",
  "description": "Date represents a Unified API Spec date format."
}
object view.EffectiveUserRate
{
  "type": "object",
  "title": "EffectiveUserRate",
  "properties": {
    "user": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "effectiveRate": {
      "type": "integer"
    }
  },
  "description": "EffectiveUserRate is the users effective rate"
}
object view.Error
{
  "type": "object",
  "title": "Error",
  "properties": {
    "id": {
      "type": "string",
      "description": "ID is a reference for this exact instance of the error."
    },
    "code": {
      "type": "string",
      "description": "Code is an application-specific error code."
    },
    "meta": {
      "type": "object",
      "description": "Meta contains tags that are useful to detect specific issues."
    },
    "title": {
      "type": "string",
      "description": "Title is a short, human-readable summary of the problem."
    },
    "detail": {
      "type": "string",
      "description": "Detail is a human-readable explanation specific to this occurrence of the\nproblem."
    }
  },
  "description": "Error describes an API error."
}
object view.ErrorResponse
{
  "type": "object",
  "title": "ErrorResponse",
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Error"
      }
    }
  },
  "description": "ErrorResponse defines how []Error should be marshaled to JSON."
}
object view.Feature
{
  "type": "object",
  "title": "Feature",
  "properties": {
    "key": {
      "type": "string"
    },
    "endAt": {
      "type": "string"
    },
    "scope": {
      "type": "string"
    },
    "value": {
      "type": "string"
    },
    "isBeta": {
      "type": "boolean"
    },
    "source": {
      "type": "string"
    },
    "startAt": {
      "type": "string"
    }
  },
  "description": "Feature contains all the information returned from a feature."
}
object view.FileversionV205
{
  "type": "object",
  "title": "FileversionV205",
  "properties": {
    "file": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "name": {
      "type": "string"
    },
    "size": {
      "type": "integer"
    },
    "fileId": {
      "type": "integer"
    },
    "status": {
      "type": "string"
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "projectId": {
      "type": "integer"
    },
    "reactions": {
      "$ref": "#/components/schemas/view.ReactionsForObject"
    },
    "versionNo": {
      "type": "integer"
    },
    "uploadedAt": {
      "type": "string"
    },
    "uploadedBy": {
      "type": "integer"
    },
    "description": {
      "type": "string"
    },
    "displayName": {
      "type": "string"
    },
    "originalName": {
      "type": "string"
    },
    "commentsCount": {
      "type": "integer"
    },
    "fileVersionId": {
      "type": "integer"
    },
    "commentsCountRead": {
      "type": "integer"
    }
  },
  "description": "FileversionV205 contains all the information returned from a fileversion."
}
object view.Form
{
  "type": "object",
  "title": "Form",
  "properties": {
    "id": {
      "type": "integer"
    },
    "state": {
      "type": "string"
    },
    "token": {
      "$ref": "#/components/schemas/view.Token"
    },
    "content": {
      "$ref": "#/components/schemas/view.Content"
    },
    "isShared": {
      "type": "boolean"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "deletedAt": {
      "type": "string"
    },
    "deletedBy": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "updatedAt": {
      "type": "string"
    },
    "updatedBy": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "hostObject": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "redirectUrl": {
      "type": "string"
    },
    "installation": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "primaryColor": {
      "type": "string"
    },
    "submitButtonText": {
      "type": "string"
    },
    "taskTitleFieldId": {
      "type": "string"
    },
    "totalSubmissions": {
      "type": "integer"
    },
    "destinationObject": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "confirmationMessage": {
      "type": "string"
    },
    "responseEmailFieldId": {
      "type": "string"
    },
    "allowTeamworkBranding": {
      "type": "boolean"
    },
    "promptAdditionalSubmissions": {
      "type": "boolean"
    }
  },
  "description": "Form contains all the information returned from a form."
}
object view.IncludedProject
{
  "type": "object",
  "title": "IncludedProject",
  "description": "IncludedProject is a sideloaded project"
}
object view.IncludedTask
{
  "type": "object",
  "title": "IncludedTask",
  "description": "IncludedTask is a sideloaded task."
}
object view.Industry
{
  "type": "object",
  "title": "Industry",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "isActive": {
      "type": "boolean"
    },
    "isPublished": {
      "type": "boolean"
    },
    "displayOrder": {
      "type": "integer"
    },
    "industryCategory": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "industryCategoryId": {
      "type": "integer"
    }
  },
  "description": "Industry contains all the information returned from an industry."
}
object view.LegacyCalendarEvent
{
  "type": "object",
  "title": "LegacyCalendarEvent",
  "properties": {
    "id": {
      "type": "integer"
    },
    "type": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "title": {
      "type": "string"
    },
    "allDay": {
      "type": "boolean"
    },
    "typeId": {
      "type": "integer"
    },
    "deleted": {
      "type": "boolean"
    },
    "endDate": {
      "type": "string"
    },
    "ownedBy": {
      "type": "integer"
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "location": {
      "type": "string"
    },
    "sequence": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "deletedAt": {
      "type": "string"
    },
    "deletedBy": {
      "type": "integer"
    },
    "projectId": {
      "type": "integer"
    },
    "startDate": {
      "type": "string"
    },
    "updatedAt": {
      "type": "string"
    },
    "updatedBy": {
      "type": "integer"
    },
    "sequenceId": {
      "type": "integer"
    },
    "showAsBusy": {
      "type": "boolean"
    },
    "dateDeleted": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "ownerUserId": {
      "type": "integer"
    },
    "privacyType": {
      "type": "string"
    },
    "attendingUsers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "createdByUserId": {
      "type": "integer"
    },
    "createdDateTime": {
      "type": "string"
    },
    "dateLastUpdated": {
      "type": "string"
    },
    "deletedByUserId": {
      "type": "integer"
    },
    "updatedByUserId": {
      "type": "integer"
    },
    "attendeesCanEdit": {
      "type": "boolean"
    },
    "attendingUserIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "monthlyRepeatType": {
      "type": "string"
    },
    "projectUsersCanEdit": {
      "type": "boolean"
    },
    "additionalProperties": {
      "type": "string"
    },
    "currentUserAssociationType": {
      "type": "string"
    }
  },
  "description": "LegacyCalendarEvent contains all the information returned from a calendar event."
}
object view.LegacyCalendarEventType
{
  "type": "object",
  "title": "LegacyCalendarEventType",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "color": {
      "type": "string"
    },
    "unavailable": {
      "type": "boolean"
    }
  },
  "description": "LegacyCalendarEventType contains all the information returned from a calendar event\ntype."
}
object view.LegacyUnavailableTime
{
  "type": "object",
  "title": "LegacyUnavailableTime",
  "properties": {
    "id": {
      "type": "integer"
    },
    "meta": {
      "type": "object"
    },
    "type": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "title": {
      "type": "string"
    },
    "allDay": {
      "type": "boolean"
    },
    "deleted": {
      "type": "boolean"
    },
    "endDate": {
      "$ref": "#/components/schemas/view.Date"
    },
    "ownedBy": {
      "type": "integer"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "deletedAt": {
      "type": "string"
    },
    "deletedBy": {
      "type": "integer"
    },
    "startDate": {
      "$ref": "#/components/schemas/view.Date"
    },
    "updatedAt": {
      "type": "string"
    },
    "updatedBy": {
      "type": "integer"
    },
    "description": {
      "type": "string"
    },
    "hoursPerDay": {
      "type": "number"
    },
    "attendingUsers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "durationMinutes": {
      "type": "integer"
    }
  },
  "description": "LegacyUnavailableTime contains all the information returned for an unavailable\ntime."
}
object view.LinkItem
{
  "type": "object",
  "title": "LinkItem",
  "properties": {
    "id": {
      "type": "integer"
    },
    "code": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "width": {
      "type": "integer"
    },
    "height": {
      "type": "integer"
    },
    "deleted": {
      "type": "boolean"
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "category": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "provider": {
      "type": "string"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "deletedAt": {
      "type": "string"
    },
    "deletedBy": {
      "type": "integer"
    },
    "isPrivate": {
      "type": "boolean"
    },
    "projectId": {
      "type": "integer"
    },
    "updatedAt": {
      "type": "string"
    },
    "updatedBy": {
      "type": "integer"
    },
    "categoryId": {
      "type": "integer"
    },
    "description": {
      "type": "string"
    },
    "forceNewWindow": {
      "type": "integer"
    }
  },
  "description": "LinkItem contains all the information returned from a link item."
}
object view.Lockdown
{
  "type": "object",
  "title": "Lockdown",
  "properties": {
    "id": {
      "type": "integer"
    },
    "user": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "items": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "userID": {
      "type": "integer"
    },
    "updatedAt": {
      "type": "string"
    },
    "grantAccessTo": {
      "$ref": "#/components/schemas/view.UserGroupsDeprecated"
    }
  },
  "description": "Lockdown contains all the information returned from a lockdown."
}
object view.Logo
{
  "type": "object",
  "title": "Logo",
  "properties": {
    "url": {
      "type": "string"
    }
  },
  "description": "Logo contains all the information returned from a form custom logo."
}
object view.Message
{
  "type": "object",
  "title": "Message",
  "properties": {
    "id": {
      "type": "integer"
    },
    "body": {
      "type": "string"
    },
    "meta": {
      "$ref": "#/components/schemas/view.MessageReplyMeta"
    },
    "title": {
      "type": "string"
    },
    "author": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "status": {
      "type": "string"
    },
    "message": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "lockdown": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "createdAt": {
      "type": "string"
    },
    "projectId": {
      "type": "integer"
    },
    "updatedAt": {
      "type": "string"
    },
    "attachments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "peopleNotifiedCount": {
      "type": "integer"
    }
  },
  "description": "Message contains all the information returned from a project message."
}
object view.MessageReply
{
  "type": "object",
  "title": "MessageReply",
  "properties": {
    "id": {
      "type": "integer"
    },
    "body": {
      "type": "string"
    },
    "meta": {
      "$ref": "#/components/schemas/view.MessageReplyMeta"
    },
    "author": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "status": {
      "type": "string"
    },
    "message": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "createdAt": {
      "type": "string"
    },
    "updatedAt": {
      "type": "string"
    },
    "attachments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "peopleNotifiedCount": {
      "type": "integer"
    }
  },
  "description": "MessageReply contains all the information returned from a project message."
}
object view.MessageReplyMeta
{
  "type": "object",
  "title": "MessageReplyMeta",
  "properties": {
    "isRead": {
      "type": "boolean"
    },
    "permissions": {
      "type": "object",
      "properties": {
        "canEdit": {
          "type": "boolean"
        }
      }
    }
  },
  "description": "MessageReplyMeta is the message reply meta."
}
object view.Meta
{
  "type": "object",
  "title": "Meta",
  "properties": {
    "page": {
      "$ref": "#/components/schemas/view.MetaPage"
    },
    "limit": {
      "type": "integer"
    },
    "nextCursor": {
      "type": "string"
    },
    "prevCursor": {
      "type": "string"
    },
    "averageSpend": {
      "type": "integer"
    },
    "totalCapacity": {
      "type": "integer"
    }
  },
  "description": "Meta represents the Unified API meta object."
}
object view.MetaPage
{
  "type": "object",
  "title": "MetaPage",
  "properties": {
    "count": {
      "type": "integer"
    },
    "hasMore": {
      "type": "boolean"
    },
    "pageSize": {
      "type": "integer"
    },
    "pageOffset": {
      "type": "integer"
    }
  },
  "description": "MetaPage represents the Unified API page meta object."
}
object view.Milestone
{
  "type": "object",
  "title": "Milestone",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "tags": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "status": {
      "type": "string"
    },
    "tagIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "canEdit": {
      "type": "boolean",
      "description": "permissions"
    },
    "private": {
      "type": "boolean"
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "deadline": {
      "type": "string"
    },
    "lockdown": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "reminder": {
      "type": "boolean"
    },
    "completed": {
      "type": "boolean"
    },
    "createdBy": {
      "type": "integer"
    },
    "createdOn": {
      "type": "string"
    },
    "isDeleted": {
      "type": "boolean"
    },
    "projectId": {
      "type": "integer"
    },
    "tasklists": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "updatedBy": {
      "type": "integer"
    },
    "lockdownId": {
      "type": "integer"
    },
    "canComplete": {
      "type": "boolean"
    },
    "completedBy": {
      "type": "integer"
    },
    "completedOn": {
      "type": "string"
    },
    "completerId": {
      "type": "integer"
    },
    "description": {
      "type": "string"
    },
    "tasklistIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "commentsCount": {
      "type": "integer"
    },
    "creatorUserId": {
      "type": "integer"
    },
    "lastChangedOn": {
      "type": "string"
    },
    "latestUpdates": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Audit"
      }
    },
    "changeFollowers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "descriptionHTML": {
      "type": "string"
    },
    "numCommentsRead": {
      "type": "integer"
    },
    "originalDueDate": {
      "type": "string"
    },
    "commentFollowers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "changeFollowerIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "commentFollowerIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "percentageComplete": {
      "type": "integer"
    },
    "responsibleParties": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "responsiblePartyIds": {
      "type": "array",
      "items": {
        "type": "integer"
      },
      "description": "optional fields that are returned only when querying a milestone endpoint"
    },
    "userFollowingChanges": {
      "type": "boolean"
    },
    "userFollowingComments": {
      "type": "boolean"
    },
    "percentageTasksCompleted": {
      "type": "integer"
    }
  },
  "description": "Milestone contains all the information returned from a milestone."
}
object view.MyTimesheet
{
  "type": "object",
  "title": "MyTimesheet",
  "properties": {
    "dates": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.MyTimesheetDateSummary"
      }
    },
    "total": {
      "type": "integer"
    },
    "entity": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "customRow": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "isCustomRow": {
      "type": "boolean"
    }
  },
  "description": "MyTimesheet contains api response information for a timesheet"
}
object view.MyTimesheetDateSummary
{
  "type": "object",
  "title": "MyTimesheetDateSummary",
  "properties": {
    "timelogs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "totalMinutes": {
      "type": "integer"
    }
  },
  "description": "MyTimesheetDateSummary contains total minutes and timelog ids for a date"
}
object view.Notebook
{
  "type": "object",
  "title": "Notebook",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "tags": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "type": {
      "type": "string"
    },
    "locked": {
      "type": "boolean"
    },
    "tagIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "deleted": {
      "type": "boolean"
    },
    "privacy": {
      "$ref": "#/components/schemas/view.UserGroupsDeprecated"
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "category": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "contents": {
      "type": "string",
      "description": "can be optionally hidden on lists"
    },
    "lockdown": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "lockedAt": {
      "type": "string"
    },
    "lockedBy": {
      "type": "integer"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "deletedAt": {
      "type": "string"
    },
    "deletedBy": {
      "type": "integer"
    },
    "isPrivate": {
      "type": "boolean"
    },
    "projectId": {
      "type": "integer"
    },
    "updatedAt": {
      "type": "string"
    },
    "updatedBy": {
      "type": "integer"
    },
    "categoryId": {
      "type": "integer"
    },
    "lockdownId": {
      "type": "integer"
    },
    "contentHTML": {
      "type": "string"
    },
    "dateCreated": {
      "type": "string"
    },
    "dateDeleted": {
      "type": "string"
    },
    "dateUpdated": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "isFullWidth": {
      "type": "boolean"
    },
    "versionCount": {
      "type": "integer"
    },
    "commentsCount": {
      "type": "integer"
    },
    "secureContent": {
      "type": "boolean"
    },
    "changeFollowers": {
      "$ref": "#/components/schemas/view.UserGroupsDeprecated"
    },
    "createdByUserID": {
      "type": "integer"
    },
    "deletedByUserID": {
      "type": "integer"
    },
    "latestVersionNo": {
      "type": "integer"
    },
    "notebookVersion": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "updatedByUserID": {
      "type": "integer"
    },
    "commentFollowers": {
      "$ref": "#/components/schemas/view.UserGroupsDeprecated"
    },
    "notebookVersionID": {
      "type": "integer"
    },
    "readCommentsCount": {
      "type": "integer"
    },
    "userFollowingChanges": {
      "type": "boolean"
    },
    "userFollowingComments": {
      "type": "boolean"
    },
    "notebookVersionCreatedDateTime": {
      "type": "string"
    },
    "notebookVersionUpdatedDateTime": {
      "type": "string"
    }
  },
  "description": "Notebook contains all the information returned from a notebook."
}
object view.NotebookCategory
{
  "type": "object",
  "title": "NotebookCategory",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "color": {
      "type": "string"
    },
    "parent": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "parentId": {
      "type": "integer"
    },
    "projectId": {
      "type": "integer"
    },
    "elementsCount": {
      "type": "integer"
    }
  },
  "description": "NotebookCategory contains all the information returned from a notebook category."
}
object view.NotebookVersion
{
  "type": "object",
  "title": "NotebookVersion",
  "properties": {
    "contents": {
      "type": "string"
    },
    "notebook": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "updatedAt": {
      "type": "string"
    },
    "versionId": {
      "type": "integer"
    },
    "notebookId": {
      "type": "integer"
    },
    "contentHTML": {
      "type": "string"
    },
    "dateCreated": {
      "type": "string"
    },
    "dateUpdated": {
      "type": "string"
    },
    "versionNumber": {
      "type": "integer"
    },
    "createdByUserID": {
      "type": "integer"
    }
  },
  "description": "NotebookVersion contains all the information returned from a notebook version."
}
object view.Notification
{
  "type": "object",
  "title": "Notification",
  "properties": {
    "id": {
      "type": "integer"
    },
    "date": {
      "type": "string"
    },
    "item": {
      "$ref": "#/components/schemas/view.NotificationItem"
    },
    "link": {
      "type": "string"
    },
    "read": {
      "type": "boolean"
    },
    "user": {
      "$ref": "#/components/schemas/view.NotificationUser"
    },
    "event": {
      "type": "string"
    },
    "popUp": {
      "type": "boolean"
    },
    "action": {
      "type": "string"
    },
    "command": {
      "type": "string"
    },
    "privacy": {
      "$ref": "#/components/schemas/view.NotificationPrivacy"
    },
    "project": {
      "$ref": "#/components/schemas/view.NotificationProject"
    },
    "extraInfo": {
      "type": "string"
    },
    "extraLink": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "installation": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "extraDescription": {
      "type": "string"
    }
  },
  "description": "Notification contains all the information returned from a notification."
}
object view.NotificationItem
{
  "type": "object",
  "title": "NotificationItem",
  "properties": {
    "id": {
      "type": "integer"
    },
    "type": {
      "type": "string"
    }
  },
  "description": "NotificationItem contains the id and type being of what is being notified"
}
object view.NotificationPrivacy
{
  "type": "object",
  "title": "NotificationPrivacy",
  "properties": {
    "private": {
      "type": "boolean"
    },
    "lockdownId": {
      "type": "integer"
    }
  },
  "description": "NotificationPrivacy contains if the notification links to a private item"
}
object view.NotificationProject
{
  "type": "object",
  "title": "NotificationProject",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    }
  },
  "description": "NotificationProject contains the project ID & and name of the associated notification"
}
object view.NotificationUser
{
  "type": "object",
  "title": "NotificationUser",
  "properties": {
    "id": {
      "type": "integer"
    },
    "lastname": {
      "type": "string"
    },
    "firstname": {
      "type": "string"
    },
    "avatar_url": {
      "type": "string"
    }
  },
  "description": "NotificationUser contains the user information for the notification"
}
object view.PortfolioBoard
{
  "type": "object",
  "title": "PortfolioBoard",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "color": {
      "type": "string"
    }
  },
  "description": "PortfolioBoard contains all the information returned from a portfolio board."
}
object view.PortfolioCard
{
  "type": "object",
  "title": "PortfolioCard",
  "properties": {
    "id": {
      "type": "integer"
    },
    "board": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "column": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "boardId": {
      "type": "integer"
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "columnId": {
      "type": "integer"
    },
    "projectId": {
      "type": "integer"
    }
  },
  "description": "PortfolioCard contains all the information returned from a portfolio\ncolumn."
}
object view.PortfolioColumn
{
  "type": "object",
  "title": "PortfolioColumn",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "color": {
      "type": "string"
    }
  },
  "description": "PortfolioColumn contains all the information returned from a portfolio\ncolumn."
}
object view.ProfitDetails
{
  "type": "object",
  "title": "ProfitDetails",
  "properties": {
    "cost": {
      "type": "number"
    },
    "profit": {
      "type": "number"
    },
    "billable": {
      "type": "number"
    },
    "expenses": {
      "type": "number"
    },
    "loggedTime": {
      "type": "integer"
    },
    "billableTime": {
      "type": "integer"
    },
    "nonBillableTime": {
      "type": "integer"
    }
  },
  "description": "ProfitDetails represents the totals."
}
object view.ProjectBudget
{
  "type": "object",
  "title": "ProjectBudget",
  "properties": {
    "id": {
      "type": "integer"
    },
    "type": {
      "type": "string"
    },
    "status": {
      "type": "string"
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "capacity": {
      "type": "integer"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "deletedAt": {
      "type": "string"
    },
    "deletedBy": {
      "type": "integer"
    },
    "projectId": {
      "type": "integer"
    },
    "updatedAt": {
      "type": "string"
    },
    "updatedBy": {
      "type": "integer"
    },
    "isRetainer": {
      "type": "boolean"
    },
    "repeatUnit": {
      "type": "string"
    },
    "completedAt": {
      "type": "string"
    },
    "completedBy": {
      "type": "integer"
    },
    "dateCreated": {
      "type": "string"
    },
    "dateDeleted": {
      "type": "string"
    },
    "dateUpdated": {
      "type": "string"
    },
    "defaultRate": {
      "type": "number"
    },
    "endDateTime": {
      "type": "string"
    },
    "expenseType": {
      "type": "string"
    },
    "isRepeating": {
      "type": "boolean"
    },
    "overspendAt": {
      "type": "string"
    },
    "timelogType": {
      "type": "string"
    },
    "capacityUsed": {
      "type": "integer"
    },
    "currencyCode": {
      "type": "string"
    },
    "repeatPeriod": {
      "type": "integer"
    },
    "carryCapacity": {
      "type": "integer"
    },
    "dateCompleted": {
      "type": "string"
    },
    "notifications": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "startDateTime": {
      "type": "string"
    },
    "budgetCategory": {
      "type": "string"
    },
    "carryOverspend": {
      "type": "boolean"
    },
    "sequenceNumber": {
      "type": "integer"
    },
    "carryUnderspend": {
      "type": "boolean"
    },
    "createdByUserId": {
      "type": "integer"
    },
    "deletedByUserId": {
      "type": "integer"
    },
    "notificationIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "updatedByUserId": {
      "type": "integer"
    },
    "baselineCapacity": {
      "type": "integer"
    },
    "originatorBudget": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "repeatsRemaining": {
      "type": "integer"
    },
    "completedByUserId": {
      "type": "integer"
    },
    "budgetExpectedCost": {
      "type": "integer"
    },
    "budgetProfitMargin": {
      "type": "number"
    },
    "originatorBudgetId": {
      "type": "integer"
    },
    "budgetExpectedProfit": {
      "type": "integer"
    },
    "originatorStartDateTime": {
      "type": "string"
    }
  },
  "description": "ProjectBudget contains all the information returned from a budget."
}
object view.ProjectCategory
{
  "type": "object",
  "title": "ProjectCategory",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "color": {
      "type": "string"
    },
    "count": {
      "type": "integer"
    },
    "parent": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "parentId": {
      "type": "integer"
    }
  },
  "description": "ProjectCategory contains all the information returned from a project\ncategory."
}
object view.ProjectEmailDropbox
{
  "type": "object",
  "title": "ProjectEmailDropbox",
  "properties": {
    "id": {
      "type": "integer"
    },
    "parent": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "itemCode": {
      "type": "string"
    },
    "itemType": {
      "type": "string"
    },
    "itemEmail": {
      "type": "string"
    },
    "projectCode": {
      "type": "string"
    },
    "projectEmails": {
      "$ref": "#/components/schemas/view.ProjectEmails"
    }
  },
  "description": "ProjectEmailDropbox contains all the information returned from a file\ncategory."
}
object view.ProjectEmails
{
  "type": "object",
  "title": "ProjectEmails",
  "properties": {
    "files": {
      "type": "string"
    },
    "links": {
      "type": "string"
    },
    "tasks": {
      "type": "string"
    },
    "messages": {
      "type": "string"
    },
    "notebooks": {
      "type": "string"
    }
  },
  "description": "ProjectEmails is the project emails."
}
object view.ProjectFileV205
{
  "type": "object",
  "title": "ProjectFileV205",
  "properties": {
    "id": {
      "type": "integer"
    },
    "meta": {
      "type": "object"
    },
    "size": {
      "type": "integer"
    },
    "tags": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "status": {
      "type": "string"
    },
    "tagIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "version": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "category": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "isLocked": {
      "type": "boolean"
    },
    "lockdown": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "lockedAt": {
      "type": "string"
    },
    "lockedBy": {
      "type": "integer"
    },
    "numLikes": {
      "type": "integer"
    },
    "thumbURL": {
      "type": "string"
    },
    "versions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.FileversionV205"
      }
    },
    "deletedAt": {
      "type": "string"
    },
    "deletedBy": {
      "type": "integer"
    },
    "extraData": {
      "type": "string"
    },
    "isPrivate": {
      "enum": [
        "0",
        "1",
        "2"
      ],
      "type": "string",
      "description": "IsPrivate can have the values 0 for public, 1 for private and 2 for\ninherited."
    },
    "projectId": {
      "type": "integer"
    },
    "reactions": {
      "$ref": "#/components/schemas/view.ReactionsForObject"
    },
    "updatedAt": {
      "type": "string"
    },
    "versionId": {
      "type": "integer"
    },
    "categoryId": {
      "type": "integer"
    },
    "fileSource": {
      "type": "string"
    },
    "lockdownId": {
      "type": "integer"
    },
    "lockedDate": {
      "type": "string"
    },
    "previewURL": {
      "type": "string"
    },
    "uploadedAt": {
      "type": "string"
    },
    "uploadedBy": {
      "type": "integer"
    },
    "description": {
      "type": "string"
    },
    "displayName": {
      "type": "string"
    },
    "downloadURL": {
      "type": "string"
    },
    "originalName": {
      "type": "string"
    },
    "relatedItems": {
      "$ref": "#/components/schemas/view.RelatedItems"
    },
    "uploadedDate": {
      "type": "string"
    },
    "commentsCount": {
      "type": "integer"
    },
    "filenameOnDisk": {
      "type": "string"
    },
    "lockedByUserId": {
      "type": "integer"
    },
    "changeFollowers": {
      "$ref": "#/components/schemas/view.UserGroupsDeprecated"
    },
    "commentFollowers": {
      "$ref": "#/components/schemas/view.UserGroupsDeprecated"
    },
    "uploadedByUserID": {
      "type": "integer"
    },
    "commentsCountRead": {
      "type": "integer"
    },
    "latestFileVersionNo": {
      "type": "integer"
    }
  },
  "description": "ProjectFileV205 contains all the information returned from a file."
}
object view.ProjectMinMaxAvailableDates
{
  "type": "object",
  "title": "ProjectMinMaxAvailableDates",
  "properties": {
    "maxEndDate": {
      "type": "string"
    },
    "minStartDate": {
      "type": "string"
    },
    "deadlinesFound": {
      "type": "boolean"
    },
    "suggestedEndDate": {
      "type": "string"
    },
    "suggestedStartDate": {
      "type": "string"
    }
  },
  "description": "ProjectMinMaxAvailableDates shows suggested start and\nend dates for a project."
}
object view.ProjectPermissions
{
  "type": "object",
  "title": "ProjectPermissions",
  "properties": {
    "active": {
      "type": "boolean"
    },
    "addTime": {
      "type": "boolean"
    },
    "addFiles": {
      "type": "boolean"
    },
    "addForms": {
      "type": "boolean"
    },
    "addLinks": {
      "type": "boolean"
    },
    "addRisks": {
      "type": "boolean"
    },
    "addTasks": {
      "type": "boolean"
    },
    "viewTime": {
      "type": "boolean"
    },
    "canAccess": {
      "type": "boolean"
    },
    "viewLinks": {
      "type": "boolean"
    },
    "isArchived": {
      "type": "boolean"
    },
    "setPrivacy": {
      "type": "boolean"
    },
    "addExpenses": {
      "type": "boolean"
    },
    "addMessages": {
      "type": "boolean"
    },
    "isObserving": {
      "type": "boolean"
    },
    "addNotebooks": {
      "type": "boolean"
    },
    "addTaskLists": {
      "type": "boolean"
    },
    "canViewForms": {
      "type": "boolean"
    },
    "canViewRates": {
      "type": "boolean"
    },
    "editAllTasks": {
      "type": "boolean"
    },
    "viewInvoices": {
      "type": "boolean"
    },
    "addMilestones": {
      "type": "boolean"
    },
    "viewNotebooks": {
      "type": "boolean"
    },
    "canManageRates": {
      "type": "boolean"
    },
    "inOwnerCompany": {
      "type": "boolean"
    },
    "canManagePeople": {
      "type": "boolean"
    },
    "canViewSchedule": {
      "type": "boolean"
    },
    "viewAllTimeLogs": {
      "type": "boolean"
    },
    "addProjectUpdate": {
      "type": "boolean"
    },
    "canEditWorkflows": {
      "type": "boolean"
    },
    "canViewWorkflows": {
      "type": "boolean"
    },
    "viewRiskRegister": {
      "type": "boolean"
    },
    "canManageSchedule": {
      "type": "boolean"
    },
    "viewEstimatedTime": {
      "type": "boolean"
    },
    "viewProjectUpdate": {
      "type": "boolean"
    },
    "manageCustomFields": {
      "type": "boolean"
    },
    "canViewProjectBudget": {
      "type": "boolean"
    },
    "projectAdministrator": {
      "type": "boolean"
    },
    "viewMessagesAndFiles": {
      "type": "boolean"
    },
    "canViewProjectMembers": {
      "type": "boolean"
    },
    "canManageProjectBudget": {
      "type": "boolean"
    },
    "viewTasksAndMilestones": {
      "type": "boolean"
    },
    "canViewProjectTemplates": {
      "type": "boolean"
    },
    "canManageProjectTemplates": {
      "type": "boolean"
    },
    "receiveEmailNotifications": {
      "type": "boolean"
    },
    "canManageProjectMembership": {
      "type": "boolean"
    }
  },
  "description": "ProjectPermissions determines the user permissions associated with a project."
}
object view.ProjectUpdate
{
  "type": "object",
  "title": "ProjectUpdate",
  "properties": {
    "id": {
      "type": "integer"
    },
    "text": {
      "type": "string"
    },
    "color": {
      "type": "string"
    },
    "health": {
      "type": "integer"
    },
    "deleted": {
      "type": "boolean"
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "isActive": {
      "type": "boolean"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "deletedAt": {
      "type": "string"
    },
    "deletedBy": {
      "type": "integer"
    },
    "projectId": {
      "type": "integer"
    },
    "reactions": {
      "$ref": "#/components/schemas/view.ReactionsForObject"
    },
    "updatedAt": {
      "type": "string"
    },
    "healthLabel": {
      "type": "string"
    },
    "likeFromUsers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "likeFromUserIDs": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    }
  },
  "description": "ProjectUpdate contains all the information returned from a update."
}
object view.ProjectV205
{
  "type": "object",
  "title": "ProjectV205",
  "properties": {
    "id": {
      "type": "integer"
    },
    "logo": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "tags": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "type": {
      "type": "string"
    },
    "endAt": {
      "type": "string"
    },
    "users": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "status": {
      "type": "string"
    },
    "tagIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "update": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "company": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "endDate": {
      "type": "string"
    },
    "ownedBy": {
      "type": "integer"
    },
    "ownerId": {
      "type": "integer"
    },
    "startAt": {
      "type": "string"
    },
    "category": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "logoIcon": {
      "type": "string"
    },
    "updateId": {
      "type": "integer"
    },
    "companyId": {
      "type": "integer"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "isStarred": {
      "type": "boolean"
    },
    "logoColor": {
      "type": "string"
    },
    "startDate": {
      "type": "string"
    },
    "startPage": {
      "type": "string"
    },
    "subStatus": {
      "type": "string"
    },
    "updatedAt": {
      "type": "string"
    },
    "updatedBy": {
      "type": "integer"
    },
    "workflows": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "categoryId": {
      "type": "integer"
    },
    "isBillable": {
      "type": "boolean"
    },
    "timeBudget": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "activePages": {
      "type": "object",
      "properties": {
        "list": {
          "type": "boolean"
        },
        "time": {
          "type": "boolean"
        },
        "board": {
          "type": "boolean"
        },
        "files": {
          "type": "boolean"
        },
        "forms": {
          "type": "boolean"
        },
        "gantt": {
          "type": "boolean"
        },
        "links": {
          "type": "boolean"
        },
        "table": {
          "type": "boolean"
        },
        "tasks": {
          "type": "boolean"
        },
        "proofs": {
          "type": "boolean"
        },
        "billing": {
          "type": "boolean"
        },
        "finance": {
          "type": "boolean"
        },
        "comments": {
          "type": "boolean"
        },
        "messages": {
          "type": "boolean"
        },
        "notebooks": {
          "type": "boolean"
        },
        "milestones": {
          "type": "boolean"
        },
        "riskRegister": {
          "type": "boolean"
        }
      }
    },
    "description": {
      "type": "string"
    },
    "announcement": {
      "type": "string"
    },
    "integrations": {
      "type": "object",
      "properties": {
        "xero": {
          "type": "object",
          "properties": {
            "enabled": {
              "type": "boolean"
            },
            "connected": {
              "type": "boolean"
            },
            "countryCode": {
              "type": "string"
            },
            "baseCurrency": {
              "type": "string"
            },
            "organisation": {
              "type": "string"
            }
          }
        },
        "sharepoint": {
          "type": "object",
          "properties": {
            "folder": {
              "type": "string"
            },
            "account": {
              "type": "string"
            },
            "enabled": {
              "type": "boolean"
            },
            "folderName": {
              "type": "string"
            }
          }
        },
        "googleDrive": {
          "type": "object",
          "properties": {
            "access": {
              "type": "string"
            },
            "folder": {
              "type": "string"
            },
            "enabled": {
              "type": "boolean"
            },
            "folderName": {
              "type": "string"
            }
          }
        },
        "oneDriveBusiness": {
          "type": "object",
          "properties": {
            "folder": {
              "type": "string"
            },
            "account": {
              "type": "string"
            },
            "enabled": {
              "type": "boolean"
            },
            "folderName": {
              "type": "string"
            }
          }
        }
      }
    },
    "lastWorkedOn": {
      "type": "string"
    },
    "projectOwner": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "skipWeekends": {
      "type": "boolean"
    },
    "timeBudgetId": {
      "type": "integer"
    },
    "defaultPrivacy": {
      "type": "string"
    },
    "isProjectAdmin": {
      "type": "boolean"
    },
    "latestActivity": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "notifyEveryone": {
      "type": "boolean"
    },
    "portfolioCards": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "privacyEnabled": {
      "type": "boolean"
    },
    "projectOwnerId": {
      "type": "integer"
    },
    "tasksStartPage": {
      "type": "string"
    },
    "financialBudget": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "isSampleProject": {
      "type": "boolean"
    },
    "showAnnouncement": {
      "type": "boolean"
    },
    "allowNotifyAnyone": {
      "type": "boolean"
    },
    "customFieldValues": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "customfieldValues": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "financialBudgetId": {
      "type": "integer"
    },
    "overviewStartPage": {
      "type": "string"
    },
    "notifyTaskAssignee": {
      "type": "boolean"
    },
    "customFieldValueIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "isOnBoardingProject": {
      "type": "boolean"
    },
    "replyByEmailEnabled": {
      "type": "boolean"
    },
    "harvestTimersEnabled": {
      "type": "boolean"
    },
    "minMaxAvailableDates": {
      "$ref": "#/components/schemas/view.ProjectMinMaxAvailableDates"
    },
    "directFileUploadsEnabled": {
      "type": "boolean"
    },
    "notifyCommentIncludeCreator": {
      "type": "boolean"
    }
  },
  "description": "ProjectV205 contains all the information returned from a project."
}
object view.Proof
{
  "type": "object",
  "title": "Proof",
  "properties": {
    "id": {
      "type": "integer"
    },
    "due": {
      "$ref": "#/components/schemas/view.Date"
    },
    "state": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "entity": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "parent": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "status": {
      "type": "string"
    },
    "company": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "objects": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.ProofObject"
      }
    },
    "product": {
      "type": "string"
    },
    "assignees": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Assignee"
      }
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "deletedAt": {
      "type": "string"
    },
    "deletedBy": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "updatedAt": {
      "type": "string"
    },
    "updatedBy": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "feedbackCount": {
      "type": "integer"
    },
    "installationId": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "errorObjectIdxs": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    }
  },
  "description": "Proof contains all the information returned from a proof."
}
object view.ProofObject
{
  "type": "object",
  "title": "ProofObject",
  "properties": {
    "id": {
      "type": "integer"
    },
    "URL": {
      "type": "string"
    },
    "due": {
      "type": "string"
    },
    "size": {
      "type": "integer"
    },
    "type": {
      "type": "string"
    },
    "state": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "format": {
      "type": "string"
    },
    "version": {
      "type": "integer"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "deletedAt": {
      "type": "string"
    },
    "deletedBy": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "thumbnail": {
      "type": "string"
    },
    "updatedAt": {
      "type": "string"
    },
    "updatedBy": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "totalChunks": {
      "type": "integer"
    },
    "sourceFormat": {
      "type": "string"
    },
    "stateMessage": {
      "type": "string"
    },
    "approvalStatus": {
      "type": "string"
    },
    "installationId": {
      "$ref": "#/components/schemas/view.Relationship"
    }
  },
  "description": "ProofObject is a proof object item type."
}
object view.PublicForm
{
  "type": "object",
  "title": "PublicForm",
  "properties": {
    "token": {
      "$ref": "#/components/schemas/view.Token"
    },
    "content": {
      "$ref": "#/components/schemas/view.Content"
    },
    "redirectUrl": {
      "type": "string"
    },
    "primaryColor": {
      "type": "string"
    },
    "allowFileUpload": {
      "type": "boolean"
    },
    "submitButtonText": {
      "type": "string"
    },
    "confirmationMessage": {
      "type": "string"
    },
    "allowTeamworkBranding": {
      "type": "boolean"
    },
    "promptAdditionalSubmissions": {
      "type": "boolean"
    }
  },
  "description": "PublicForm is a publically viewable version of Form"
}
object view.Reaction
{
  "type": "object",
  "title": "Reaction",
  "properties": {
    "type": {
      "type": "string"
    },
    "user": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "object": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "userId": {
      "type": "integer"
    },
    "objectId": {
      "type": "integer"
    },
    "objectType": {
      "type": "string"
    },
    "installation": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "installationId": {
      "type": "integer"
    },
    "postedDateTime": {
      "type": "string"
    }
  },
  "description": "Reaction is a reaction item type."
}
object view.ReactionsForObject
{
  "type": "object",
  "title": "ReactionsForObject",
  "properties": {
    "mine": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "counts": {
      "$ref": "#/components/schemas/view.ReactionsForObjectCounter"
    }
  },
  "description": "ReactionsForObject contains all reactions information of a specific object."
}
object view.ReactionsForObjectCounter
{
  "type": "object",
  "title": "ReactionsForObjectCounter",
  "properties": {
    "joy": {
      "type": "integer"
    },
    "like": {
      "type": "integer"
    },
    "frown": {
      "type": "integer"
    },
    "heart": {
      "type": "integer"
    },
    "dislike": {
      "type": "integer"
    }
  },
  "description": "ReactionsForObjectCounter contains the reactions counter of a specific\nobject."
}
object view.RelatedItems
{
  "type": "object",
  "title": "RelatedItems",
  "properties": {
    "tasks": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "comments": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "messages": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    }
  },
  "description": "RelatedItems represents the items a file can be related to."
}
object view.Relationship
{
  "type": "object",
  "title": "Relationship",
  "properties": {
    "id": {
      "type": "integer"
    },
    "meta": {
      "type": "object"
    },
    "type": {
      "type": "string"
    }
  },
  "description": "Relationship describes the relation between the main entity and a sideload type."
}
object view.Risk
{
  "type": "object",
  "title": "Risk",
  "properties": {
    "id": {
      "type": "integer"
    },
    "impact": {
      "type": "string"
    },
    "result": {
      "type": "integer"
    },
    "source": {
      "type": "string"
    },
    "status": {
      "type": "string"
    },
    "canEdit": {
      "type": "boolean"
    },
    "deleted": {
      "type": "boolean"
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "createdOn": {
      "type": "string"
    },
    "projectId": {
      "type": "integer"
    },
    "updatedAt": {
      "type": "string"
    },
    "updatedBy": {
      "type": "integer"
    },
    "impactCost": {
      "type": "boolean"
    },
    "impactValue": {
      "type": "integer"
    },
    "probability": {
      "type": "string"
    },
    "lastChangedOn": {
      "type": "string"
    },
    "impactSchedule": {
      "type": "boolean"
    },
    "mitigationPlan": {
      "type": "string"
    },
    "createdByUserId": {
      "type": "integer"
    },
    "probabilityValue": {
      "type": "integer"
    },
    "impactPerformance": {
      "type": "boolean"
    },
    "lastChangedByUserId": {
      "type": "integer"
    }
  },
  "description": "Risk represents a view of a risk."
}
object view.SampleProject
{
  "type": "object",
  "title": "SampleProject",
  "properties": {
    "id": {
      "type": "integer"
    },
    "code": {
      "type": "string"
    },
    "icon": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "content": {},
    "categoryId": {
      "type": "integer"
    },
    "description": {
      "type": "string"
    },
    "imagePreview": {
      "type": "string"
    }
  },
  "description": "SampleProject contains all the sample project information."
}
object view.Stage
{
  "type": "object",
  "title": "Stage",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "color": {
      "type": "string"
    },
    "taskIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "workflow": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "deletedAt": {
      "type": "string"
    },
    "deletedBy": {
      "type": "integer"
    },
    "updatedAt": {
      "type": "string"
    },
    "updatedBy": {
      "type": "integer"
    },
    "displayOrder": {
      "type": "number"
    },
    "showCompletedTasks": {
      "type": "boolean"
    }
  },
  "description": "Stage contains all the information returned from a stage."
}
object view.Status
{
  "type": "object",
  "title": "Status",
  "properties": {
    "id": {
      "type": "integer"
    },
    "text": {
      "type": "string"
    },
    "user": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "emoji": {
      "type": "string"
    },
    "userId": {
      "type": "integer"
    },
    "deleted": {
      "type": "boolean"
    },
    "dateTime": {
      "type": "string"
    },
    "ipAddress": {
      "type": "string"
    },
    "updatedAt": {
      "type": "string"
    },
    "dateLastUpdated": {
      "type": "string"
    }
  },
  "description": "Status contains all the information returned from a status."
}
object view.Tag
{
  "type": "object",
  "title": "Tag",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "color": {
      "type": "string"
    },
    "count": {
      "type": "integer"
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "projectId": {
      "type": "integer"
    }
  },
  "description": "Tag contains all the information returned from a tag."
}
object view.TaskAffectedV205
{
  "type": "object",
  "title": "TaskAffectedV205",
  "properties": {
    "taskIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "linkedCardId": {
      "type": "integer"
    },
    "linkedColumnId": {
      "type": "integer"
    },
    "linkedColumnName": {
      "type": "string"
    }
  },
  "description": "TaskAffectedV205 contains the affected tasks, for real-time updates"
}
object view.TaskCard
{
  "type": "object",
  "title": "TaskCard",
  "properties": {
    "id": {
      "type": "integer"
    },
    "column": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "status": {
      "type": "string"
    },
    "visible": {
      "type": "boolean"
    },
    "archived": {
      "type": "boolean"
    },
    "createBy": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "deleteBy": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "createdAt": {
      "type": "string"
    },
    "deletedAt": {
      "type": "string"
    },
    "updatedAt": {
      "type": "string"
    },
    "archivedAt": {
      "type": "string"
    },
    "archivedBy": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "displayOrder": {
      "type": "integer"
    }
  },
  "description": "TaskCard contains all the information returned from a card."
}
object view.TaskPermissions
{
  "type": "object",
  "title": "TaskPermissions",
  "properties": {
    "canEdit": {
      "type": "boolean"
    },
    "canLogTime": {
      "type": "boolean"
    },
    "canComplete": {
      "type": "boolean"
    },
    "canAddSubtasks": {
      "type": "boolean"
    },
    "canViewEstTime": {
      "type": "boolean"
    }
  },
  "description": "TaskPermissions is a user specific set of task permissions"
}
object view.TaskReminder
{
  "type": "object",
  "title": "TaskReminder",
  "properties": {
    "id": {
      "type": "integer"
    },
    "note": {
      "type": "string"
    },
    "task": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "type": {
      "type": "string"
    },
    "user": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "wasSent": {
      "type": "boolean"
    },
    "remindAt": {
      "type": "string"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "isRelative": {
      "type": "boolean"
    },
    "relativeNumberDays": {
      "type": "integer"
    }
  },
  "description": "TaskReminder contains all the information returned from a reminder."
}
object view.TaskSequence
{
  "type": "object",
  "title": "TaskSequence",
  "properties": {
    "id": {
      "type": "integer"
    },
    "dates": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Date"
      }
    },
    "rrule": {
      "type": "string"
    },
    "tasks": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "endDate": {
      "type": "string"
    },
    "duration": {
      "type": "integer"
    },
    "frequency": {
      "type": "string"
    },
    "installationId": {
      "type": "integer"
    },
    "selectedWeekDays": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "monthlyRepeatType": {
      "type": "string"
    }
  },
  "description": "TaskSequence defines how entity.TaskSequence should be rendered."
}
object view.TaskStats
{
  "type": "object",
  "title": "TaskStats",
  "properties": {
    "id": {
      "type": "integer"
    },
    "late": {
      "type": "integer"
    },
    "active": {
      "type": "integer"
    },
    "complete": {
      "type": "integer"
    }
  },
  "description": "TaskStats shows basic task stats"
}
object view.TaskTimeTotals
{
  "type": "object",
  "title": "TaskTimeTotals",
  "properties": {
    "loggedMinutes": {
      "type": "integer"
    },
    "billedloggedMinutes": {
      "type": "integer"
    },
    "billableLoggedMinutes": {
      "type": "integer"
    }
  },
  "description": "TaskTimeTotals contains time total info for a task"
}
object view.TaskV205
{
  "type": "object",
  "title": "TaskV205",
  "properties": {
    "id": {
      "type": "integer"
    },
    "card": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "meta": {
      "type": "object"
    },
    "name": {
      "type": "string"
    },
    "timer": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "column": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "proofs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "status": {
      "type": "string"
    },
    "tagIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "dueDate": {
      "type": "string"
    },
    "lockdown": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "priority": {
      "type": "string"
    },
    "progress": {
      "type": "integer"
    },
    "sequence": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "tasklist": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "assignees": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "isBlocked": {
      "type": "boolean"
    },
    "isPrivate": {
      "type": "integer"
    },
    "startDate": {
      "type": "string"
    },
    "updatedAt": {
      "type": "string"
    },
    "updatedBy": {
      "type": "integer"
    },
    "capacities": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "crmDealIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "isArchived": {
      "type": "boolean"
    },
    "parentTask": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "sequenceId": {
      "type": "integer"
    },
    "subTaskIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "tasklistId": {
      "type": "integer"
    },
    "attachments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "completedAt": {
      "type": "string"
    },
    "completedBy": {
      "type": "integer"
    },
    "completedOn": {
      "type": "string"
    },
    "dateUpdated": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "displayOrder": {
      "type": "integer"
    },
    "hasReminders": {
      "type": "boolean"
    },
    "parentTaskId": {
      "type": "integer"
    },
    "predecessors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "assigneeTeams": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "assigneeUsers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "dependencyIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "dueDateOffset": {
      "type": "integer"
    },
    "latestUpdates": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Audit"
      }
    },
    "outOfSequence": {
      "type": "boolean"
    },
    "hasDeskTickets": {
      "type": "boolean"
    },
    "predecessorIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "workflowStages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.TaskWorkflowStageData"
      }
    },
    "assigneeTeamIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "assigneeUserIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "changeFollowers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "createdByUserId": {
      "type": "integer"
    },
    "estimateMinutes": {
      "type": "integer"
    },
    "originalDueDate": {
      "$ref": "#/components/schemas/view.Date"
    },
    "sequenceDueDate": {
      "$ref": "#/components/schemas/view.Date"
    },
    "startDateOffset": {
      "type": "integer"
    },
    "userPermissions": {
      "$ref": "#/components/schemas/view.TaskPermissions"
    },
    "commentFollowers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "sequenceRootTask": {
      "type": "boolean"
    },
    "templateRoleName": {
      "type": "string"
    },
    "assigneeCompanies": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "sequenceStartDate": {
      "$ref": "#/components/schemas/view.Date"
    },
    "assigneeCompanyIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "decimalDisplayOrder": {
      "type": "number"
    },
    "descriptionContentType": {
      "type": "string"
    },
    "accumulatedEstimatedMinutes": {
      "type": "integer"
    }
  },
  "description": "TaskV205 defines how entity.Task should be rendered."
}
object view.TaskWorkflowStageData
{
  "type": "object",
  "title": "TaskWorkflowStageData",
  "properties": {
    "stageId": {
      "type": "integer"
    },
    "workflowId": {
      "type": "integer"
    },
    "stageTaskDisplayOrder": {
      "type": "number"
    }
  },
  "description": "TaskWorkflowStageData contains the workflow data for a task"
}
object view.Taskgroup
{
  "type": "object",
  "title": "Taskgroup",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "status": {
      "type": "string"
    },
    "taskIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "updatedAt": {
      "type": "string"
    },
    "updatedBy": {
      "type": "integer"
    },
    "description": {
      "type": "string"
    },
    "displayOrder": {
      "type": "number"
    }
  },
  "description": "Taskgroup contains all the information returned from a Taskgroup."
}
object view.Tasklist
{
  "type": "object",
  "title": "Tasklist",
  "properties": {
    "id": {
      "type": "integer"
    },
    "icon": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "status": {
      "type": "string"
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "isPinned": {
      "type": "boolean"
    },
    "createdAt": {
      "type": "string"
    },
    "isPrivate": {
      "type": "boolean"
    },
    "milestone": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "projectId": {
      "type": "integer"
    },
    "updatedAt": {
      "type": "string"
    },
    "isBillable": {
      "type": "boolean"
    },
    "lockdownId": {
      "type": "integer"
    },
    "defaultTask": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "description": {
      "type": "string"
    },
    "milestoneId": {
      "type": "integer"
    },
    "displayOrder": {
      "type": "integer"
    },
    "defaultTaskId": {
      "type": "integer"
    },
    "tasklistBudget": {
      "$ref": "#/components/schemas/view.Relationship"
    }
  },
  "description": "Tasklist contains all the information returned from a tasklist."
}
object view.TasklistBudget
{
  "type": "object",
  "title": "TasklistBudget",
  "properties": {
    "id": {
      "type": "integer"
    },
    "type": {
      "type": "string"
    },
    "capacity": {
      "type": "integer"
    },
    "tasklist": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "deletedAt": {
      "type": "string"
    },
    "deletedBy": {
      "type": "integer"
    },
    "projectId": {
      "type": "integer"
    },
    "updatedAt": {
      "type": "string"
    },
    "updatedBy": {
      "type": "integer"
    },
    "tasklistId": {
      "type": "integer"
    },
    "capacityUsed": {
      "type": "integer"
    },
    "notifications": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "projectbudget": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "installationId": {
      "type": "integer"
    },
    "notificationIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "projectBudgetId": {
      "type": "integer"
    }
  },
  "description": "TasklistBudget is a budget item type."
}
object view.TasklistBudgetNotification
{
  "type": "object",
  "title": "TasklistBudgetNotification",
  "properties": {
    "id": {
      "type": "integer"
    },
    "teamId": {
      "type": "integer"
    },
    "userId": {
      "type": "integer"
    },
    "budgetId": {
      "type": "integer"
    },
    "companyId": {
      "type": "integer"
    },
    "capacityThreshold": {
      "type": "number"
    },
    "notificationMedium": {
      "type": "string"
    }
  },
  "description": "TasklistBudgetNotification contains all the information returned from a notification."
}
object view.Team
{
  "type": "object",
  "title": "Team",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "teamLogo": {
      "type": "string"
    },
    "teamLogoIcon": {
      "type": "string"
    },
    "teamLogoColor": {
      "type": "string"
    }
  },
  "description": "Team contains all the information returned from a team."
}
object view.Timelog
{
  "type": "object",
  "title": "Timelog",
  "properties": {
    "id": {
      "type": "integer"
    },
    "tags": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "task": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "user": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "tagIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "taskId": {
      "type": "integer"
    },
    "userId": {
      "type": "integer"
    },
    "deleted": {
      "type": "boolean"
    },
    "minutes": {
      "type": "integer"
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "billable": {
      "type": "boolean"
    },
    "loggedBy": {
      "type": "integer"
    },
    "createdAt": {
      "type": "string"
    },
    "deletedAt": {
      "type": "string"
    },
    "deletedBy": {
      "type": "integer"
    },
    "projectId": {
      "type": "integer"
    },
    "updatedAt": {
      "type": "string"
    },
    "updatedBy": {
      "type": "integer"
    },
    "dateEdited": {
      "type": "string"
    },
    "isBillable": {
      "type": "boolean"
    },
    "timeLogged": {
      "type": "string"
    },
    "dateCreated": {
      "type": "string"
    },
    "dateDeleted": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "taskPreMove": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "deskTicketId": {
      "type": "integer"
    },
    "hasStartTime": {
      "type": "boolean"
    },
    "taskIdPreMove": {
      "type": "integer"
    },
    "editedByUserId": {
      "type": "integer"
    },
    "loggedByUserId": {
      "type": "integer"
    },
    "assignedTeamIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "deletedByUserId": {
      "type": "integer"
    },
    "projectBillingInvoice": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "projectBillingInvoiceId": {
      "type": "integer"
    }
  },
  "description": "Timelog contains all the information returned from a timelog."
}
object view.TimelogTotals
{
  "type": "object",
  "title": "TimelogTotals",
  "properties": {
    "minutes": {
      "type": "integer"
    },
    "minutesBilled": {
      "type": "integer"
    },
    "minutesBillable": {
      "type": "integer"
    },
    "estimatedMinutes": {
      "type": "integer"
    },
    "minutesNonBilled": {
      "type": "integer"
    },
    "minutesNonBillable": {
      "type": "integer"
    },
    "estimatedMinutesActive": {
      "type": "integer"
    },
    "estimatedMinutesFiltered": {
      "type": "integer"
    },
    "estimatedMinutesCompleted": {
      "type": "integer"
    },
    "estimatedMinutesWithLoggedTime": {
      "type": "integer"
    }
  },
  "description": "TimelogTotals contains all the information returned for timelog totals."
}
object view.TimelogTotalsSubtasks
{
  "type": "object",
  "title": "TimelogTotalsSubtasks",
  "properties": {
    "minutes": {
      "type": "integer"
    },
    "minutesBillable": {
      "type": "integer"
    },
    "estimatedMinutes": {
      "type": "integer"
    }
  },
  "description": "TimelogTotalsSubtasks contains all the information returned for timelog totals for subtasks."
}
object view.Timer
{
  "type": "object",
  "title": "Timer",
  "properties": {
    "id": {
      "type": "integer"
    },
    "task": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "user": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "taskId": {
      "type": "integer"
    },
    "userId": {
      "type": "integer"
    },
    "deleted": {
      "type": "boolean"
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "running": {
      "type": "boolean"
    },
    "timelog": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "billable": {
      "type": "boolean"
    },
    "duration": {
      "type": "integer"
    },
    "createdAt": {
      "type": "string"
    },
    "deletedAt": {
      "type": "string"
    },
    "intervals": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.TimerInterval"
      }
    },
    "projectId": {
      "type": "integer"
    },
    "timeLogId": {
      "type": "integer"
    },
    "updatedAt": {
      "type": "string"
    },
    "serverTime": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "lastStartedAt": {
      "type": "string"
    },
    "timerLastIntervalEnd": {
      "type": "string"
    }
  },
  "description": "Timer contains all the information returned from a timer."
}
object view.TimerInterval
{
  "type": "object",
  "title": "TimerInterval",
  "properties": {
    "id": {
      "type": "integer"
    },
    "to": {
      "type": "string"
    },
    "from": {
      "type": "string"
    },
    "duration": {
      "type": "integer"
    }
  },
  "description": "TimerInterval contains all the information returned from a timer\ninterval."
}
object view.TimesheetCustomRow
{
  "type": "object",
  "title": "TimesheetCustomRow",
  "properties": {
    "id": {
      "type": "integer"
    },
    "entityId": {
      "type": "integer"
    },
    "entityType": {
      "type": "string"
    }
  },
  "description": "TimesheetCustomRow represents a custom row for a timesheet"
}
object view.Token
{
  "type": "object",
  "title": "Token",
  "properties": {
    "value": {
      "type": "string"
    },
    "canonicalURL": {
      "type": "string"
    }
  },
  "description": "Token contains all the information returned from a form token."
}
object view.UnavailableTimes
{
  "type": "object",
  "title": "UnavailableTimes",
  "properties": {
    "dates": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/view.UnavailableTimesDateSummary"
      }
    },
    "totalUnavailableMinutes": {
      "type": "integer"
    }
  },
  "description": "UnavailableTimes contains date summary and total Unavailable minutes"
}
object view.UnavailableTimesDateSummary
{
  "type": "object",
  "title": "UnavailableTimesDateSummary",
  "properties": {
    "unavailableTimes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "totalUnavailableMinutes": {
      "type": "integer"
    }
  },
  "description": "UnavailableTimesDateSummary contains total minutes and event ids for a date"
}
object view.User
{
  "type": "object",
  "title": "User",
  "properties": {
    "id": {
      "type": "integer"
    },
    "meta": {
      "type": "object"
    },
    "type": {
      "type": "string"
    },
    "email": {
      "type": "string"
    },
    "teams": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "title": {
      "type": "string"
    },
    "company": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "deleted": {
      "type": "boolean"
    },
    "isAdmin": {
      "type": "boolean"
    },
    "lastName": {
      "type": "string"
    },
    "timezone": {
      "type": "string"
    },
    "userCost": {
      "type": "integer"
    },
    "userRate": {
      "type": "integer"
    },
    "avatarUrl": {
      "type": "string"
    },
    "companyId": {
      "type": "integer"
    },
    "firstName": {
      "type": "string"
    },
    "lengthOfDay": {
      "type": "number"
    },
    "workingHour": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "isClientUser": {
      "type": "boolean"
    },
    "companyRoleId": {
      "type": "integer"
    },
    "canAddProjects": {
      "type": "boolean"
    },
    "workingHoursId": {
      "type": "integer"
    },
    "isServiceAccount": {
      "type": "boolean"
    }
  },
  "description": "User contains all the information returned from an user."
}
object view.UserDashboard
{
  "type": "object",
  "title": "UserDashboard",
  "properties": {
    "id": {
      "type": "integer"
    },
    "user": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "color": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "userId": {
      "type": "integer"
    },
    "deleted": {
      "type": "boolean"
    },
    "project": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "createdAt": {
      "type": "string"
    },
    "deletedAt": {
      "type": "string"
    },
    "isDefault": {
      "type": "boolean"
    },
    "projectId": {
      "type": "integer"
    },
    "updatedAt": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "displayOrder": {
      "type": "integer"
    },
    "dashboardPanels": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "dashboardPanelIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "dashboardSettings": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "dashboardSettingIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    }
  },
  "description": "UserDashboard contains all the information returned from a dashboard."
}
object view.UserDashboardPanel
{
  "type": "object",
  "title": "UserDashboardPanel",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "type": {
      "type": "string"
    },
    "dashboardId": {
      "type": "integer"
    },
    "displayOrder": {
      "type": "integer"
    },
    "dashboardPanelSettingIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    }
  },
  "description": "UserDashboardPanel contains all the information returned from a dashboard\npanel."
}
object view.UserDashboardPanelSetting
{
  "type": "object",
  "title": "UserDashboardPanelSetting",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "value": {
      "type": "string"
    },
    "dashboardId": {
      "type": "integer"
    },
    "dashboardPanelId": {
      "type": "integer"
    }
  },
  "description": "UserDashboardPanelSetting contains all the information returned from a dashboard\npanel."
}
object view.UserDashboardSetting
{
  "type": "object",
  "title": "UserDashboardSetting",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "value": {
      "type": "string"
    },
    "dashboardId": {
      "type": "integer"
    }
  },
  "description": "UserDashboardSetting contains all the information returned from a dashboard\nsetting."
}
object view.UserEvents
{
  "type": "object",
  "title": "UserEvents",
  "properties": {
    "clockedIn": {
      "type": "boolean"
    }
  },
  "description": "UserEvents contains status details from other project\nfeatures related with a user."
}
object view.UserGroupsDeprecated
{
  "type": "object",
  "title": "UserGroupsDeprecated",
  "properties": {
    "teams": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "users": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "teamIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "userIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "companies": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "companyIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    }
  },
  "description": "UserGroupsDeprecated are common lists\nfor storing users, companies and teams ids\ntogether.\nUse []Relationship instead"
}
object view.UserUtilization
{
  "type": "object",
  "title": "UserUtilization",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.UserUtilizationData"
      }
    },
    "user": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "userId": {
      "type": "integer"
    }
  },
  "description": "UserUtilization contains all the information returned from a utilization."
}
object view.UserUtilizationData
{
  "type": "object",
  "title": "UserUtilizationData",
  "properties": {
    "endDate": {
      "$ref": "#/components/schemas/view.Date"
    },
    "startDate": {
      "$ref": "#/components/schemas/view.Date"
    },
    "loggedMinutes": {
      "type": "integer"
    },
    "billableMinutes": {
      "type": "integer"
    },
    "allocatedMinutes": {
      "type": "integer"
    },
    "availableMinutes": {
      "type": "integer"
    },
    "estimatedMinutes": {
      "type": "integer"
    },
    "unbillableMinutes": {
      "type": "integer"
    },
    "unavailableMinutes": {
      "type": "integer"
    }
  },
  "description": "UserUtilizationData stores the user utilization on a specific period."
}
object view.Workflow
{
  "type": "object",
  "title": "Workflow",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "stages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "status": {
      "type": "string"
    },
    "lockdown": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "createdAt": {
      "type": "string"
    },
    "createdBy": {
      "type": "integer"
    },
    "updatedAt": {
      "type": "string"
    },
    "updatedBy": {
      "type": "integer"
    },
    "projectIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "defaultWorkflow": {
      "type": "boolean"
    },
    "projectSpecific": {
      "type": "boolean"
    }
  },
  "description": "Workflow contains all the information returned from a workflow."
}
object view.WorkingHour
{
  "type": "object",
  "title": "WorkingHour",
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "string"
    },
    "object": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "entries": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/view.Relationship"
      }
    },
    "entryIds": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "objectId": {
      "type": "integer"
    },
    "createdAt": {
      "type": "string"
    },
    "updatedAt": {
      "type": "string"
    },
    "objectType": {
      "type": "string"
    },
    "dateCreated": {
      "type": "string"
    },
    "dateUpdated": {
      "type": "string"
    },
    "description": {
      "type": "string"
    }
  },
  "description": "WorkingHour stores the the working hours of an entity (user, team, etc)."
}
object view.WorkingHourEntry
{
  "type": "object",
  "title": "WorkingHourEntry",
  "properties": {
    "id": {
      "type": "integer"
    },
    "endTime": {
      "type": "string"
    },
    "weekday": {
      "type": "string"
    },
    "timezone": {
      "type": "string"
    },
    "startTime": {
      "type": "string"
    },
    "taskHours": {
      "type": "number"
    },
    "workingHour": {
      "$ref": "#/components/schemas/view.Relationship"
    },
    "workingHourId": {
      "type": "integer"
    }
  },
  "description": "WorkingHourEntry stores weekday working hour data."
}