ToDo Task and Project Manager · Ações GPT
Todoist API
API for managing tasks and projects in Todoist.
GET /projectsList projectsRetrieve a list of all projects.
POST /projectsCreate a projectCreate a new project.
GET /projects/{project_id}Get project detailsRetrieve details for a specific project.
PUT /projects/{project_id}Update projectUpdate the details of a specific project.
DELETE /projects/{project_id}Delete projectDelete a specific project.
GET /tasksList tasksRetrieve a list of all tasks.
POST /tasksCreate a taskCreate a new task.
GET /tasks/{task_id}Get task detailsRetrieve details for a specific task.
PUT /tasks/{task_id}Update taskUpdate the details of a specific task.
DELETE /tasks/{task_id}Delete taskDelete a specific task.
GET /labelsList labelsRetrieve a list of all labels.
POST /labelsCreate a labelCreate a new label.
GET /labels/{label_id}Get label detailsRetrieve details for a specific label.
PUT /labels/{label_id}Update labelUpdate the details of a specific label.
DELETE /labels/{label_id}Delete labelDelete a specific label.
GET /userGet user detailsRetrieve details for the authenticated user.
Esquema API original
{
"openapi": "3.1.0",
"info": {
"title": "Todoist API",
"description": "API for managing tasks and projects in Todoist.",
"version": "1.0.0"
},
"servers": [
{
"url": "https://api.todoist.com/rest/v2"
}
],
"security": [
{
"apiKeyAuth": []
}
],
"paths": {
"/projects": {
"get": {
"summary": "List projects",
"description": "Retrieve a list of all projects.",
"operationId": "listProjects",
"x-openai-isConsequential": false,
"responses": {
"200": {
"description": "A list of projects.",
"content": {
"application/json": {
"example": [
{
"id": 1,
"name": "Personal"
},
{
"id": 2,
"name": "Work"
}
]
}
}
}
}
},
"post": {
"summary": "Create a project",
"description": "Create a new project.",
"operationId": "createProject",
"x-openai-isConsequential": true,
"requestBody": {
"required": true,
"content": {
"application/json": {
"example": {
"name": "New Project"
}
}
}
},
"responses": {
"201": {
"description": "The created project.",
"content": {
"application/json": {
"example": {
"id": 3,
"name": "New Project"
}
}
}
}
}
}
},
"/projects/{project_id}": {
"get": {
"summary": "Get project details",
"description": "Retrieve details for a specific project.",
"operationId": "getProjectDetails",
"x-openai-isConsequential": false,
"parameters": [
{
"name": "project_id",
"in": "path",
"required": true,
"schema": {
"type": "integer"
}
}
],
"responses": {
"200": {
"description": "The project details.",
"content": {
"application/json": {
"example": {
"id": 1,
"name": "Personal"
}
}
}
}
}
},
"put": {
"summary": "Update project",
"description": "Update the details of a specific project.",
"operationId": "updateProject",
"x-openai-isConsequential": true,
"parameters": [
{
"name": "project_id",
"in": "path",
"required": true,
"schema": {
"type": "integer"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"example": {
"name": "Updated Project Name"
}
}
}
},
"responses": {
"200": {
"description": "The updated project details.",
"content": {
"application/json": {
"example": {
"id": 1,
"name": "Updated Project Name"
}
}
}
}
}
},
"delete": {
"summary": "Delete project",
"description": "Delete a specific project.",
"operationId": "deleteProject",
"x-openai-isConsequential": true,
"parameters": [
{
"name": "project_id",
"in": "path",
"required": true,
"schema": {
"type": "integer"
}
}
],
"responses": {
"204": {
"description": "Project successfully deleted."
}
}
}
},
"/tasks": {
"get": {
"summary": "List tasks",
"description": "Retrieve a list of all tasks.",
"operationId": "listTasks",
"x-openai-isConsequential": false,
"responses": {
"200": {
"description": "A list of tasks.",
"content": {
"application/json": {
"example": [
{
"id": 1,
"content": "Buy groceries",
"project_id": 1
},
{
"id": 2,
"content": "Finish report",
"project_id": 2
}
]
}
}
}
}
},
"post": {
"summary": "Create a task",
"description": "Create a new task.",
"operationId": "createTask",
"x-openai-isConsequential": true,
"requestBody": {
"required": true,
"content": {
"application/json": {
"example": {
"content": "New Task",
"project_id": 1
}
}
}
},
"responses": {
"201": {
"description": "The created task.",
"content": {
"application/json": {
"example": {
"id": 3,
"content": "New Task",
"project_id": 1
}
}
}
}
}
}
},
"/tasks/{task_id}": {
"get": {
"summary": "Get task details",
"description": "Retrieve details for a specific task.",
"operationId": "getTaskDetails",
"x-openai-isConsequential": false,
"parameters": [
{
"name": "task_id",
"in": "path",
"required": true,
"schema": {
"type": "integer"
}
}
],
"responses": {
"200": {
"description": "The task details.",
"content": {
"application/json": {
"example": {
"id": 1,
"content": "Buy groceries",
"project_id": 1
}
}
}
}
}
},
"put": {
"summary": "Update task",
"description": "Update the details of a specific task.",
"operationId": "updateTask",
"x-openai-isConsequential": true,
"parameters": [
{
"name": "task_id",
"in": "path",
"required": true,
"schema": {
"type": "integer"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"example": {
"content": "Updated Task"
}
}
}
},
"responses": {
"200": {
"description": "The updated task details.",
"content": {
"application/json": {
"example": {
"id": 1,
"content": "Updated Task",
"project_id": 1
}
}
}
}
}
},
"delete": {
"summary": "Delete task",
"description": "Delete a specific task.",
"operationId": "deleteTask",
"x-openai-isConsequential": true,
"parameters": [
{
"name": "task_id",
"in": "path",
"required": true,
"schema": {
"type": "integer"
}
}
],
"responses": {
"204": {
"description": "Task successfully deleted."
}
}
}
},
"/labels": {
"get": {
"summary": "List labels",
"description": "Retrieve a list of all labels.",
"operationId": "listLabels",
"x-openai-isConsequential": false,
"responses": {
"200": {
"description": "A list of labels.",
"content": {
"application/json": {
"example": [
{
"id": 1,
"name": "Home"
},
{
"id": 2,
"name": "Work"
}
]
}
}
}
}
},
"post": {
"summary": "Create a label",
"description": "Create a new label.",
"operationId": "createLabel",
"x-openai-isConsequential": true,
"requestBody": {
"required": true,
"content": {
"application/json": {
"example": {
"name": "New Label"
}
}
}
},
"responses": {
"201": {
"description": "The created label.",
"content": {
"application/json": {
"example": {
"id": 3,
"name": "New Label"
}
}
}
}
}
}
},
"/labels/{label_id}": {
"get": {
"summary": "Get label details",
"description": "Retrieve details for a specific label.",
"operationId": "getLabelDetails",
"x-openai-isConsequential": false,
"parameters": [
{
"name": "label_id",
"in": "path",
"required": true,
"schema": {
"type": "integer"
}
}
],
"responses": {
"200": {
"description": "The label details.",
"content": {
"application/json": {
"example": {
"id": 1,
"name": "Home"
}
}
}
}
}
},
"put": {
"summary": "Update label",
"description": "Update the details of a specific label.",
"operationId": "updateLabel",
"x-openai-isConsequential": true,
"parameters": [
{
"name": "label_id",
"in": "path",
"required": true,
"schema": {
"type": "integer"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"example": {
"name": "Updated Label Name"
}
}
}
},
"responses": {
"200": {
"description": "The updated label details.",
"content": {
"application/json": {
"example": {
"id": 1,
"name": "Updated Label Name"
}
}
}
}
}
},
"delete": {
"summary": "Delete label",
"description": "Delete a specific label.",
"operationId": "deleteLabel",
"x-openai-isConsequential": true,
"parameters": [
{
"name": "label_id",
"in": "path",
"required": true,
"schema": {
"type": "integer"
}
}
],
"responses": {
"204": {
"description": "Label successfully deleted."
}
}
}
},
"/user": {
"get": {
"summary": "Get user details",
"description": "Retrieve details for the authenticated user.",
"operationId": "getUserDetails",
"x-openai-isConsequential": false,
"responses": {
"200": {
"description": "The user details.",
"content": {
"application/json": {
"example": {
"id": 12345,
"name": "John Doe",
"email": "john@example.com"
}
}
}
}
}
}
}
},
"components": {
"securitySchemes": {
"apiKeyAuth": {
"type": "apiKey",
"in": "header",
"name": "Authorization"
}
},
"schemas": {
"Project": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "The unique identifier for the project."
},
"name": {
"type": "string",
"description": "The name of the project."
}
}
},
"Task": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "The unique identifier for the task."
},
"content": {
"type": "string",
"description": "The content or description of the task."
},
"project_id": {
"type": "integer",
"description": "The ID of the project to which the task belongs."
}
}
},
"Label": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "The unique identifier for the label."
},
"name": {
"type": "string",
"description": "The name of the label."
}
}
},
"User": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "The unique identifier for the user."
},
"name": {
"type": "string",
"description": "The name of the user."
},
"email": {
"type": "string",
"format": "email",
"description": "The email address of the user."
}
}
}
}
}
}TickTick
Access and manage a user's tasks, lists, and other related resources in TickTick
GET /open/v1/projectGetProjectsGet all projects for the user
POST /open/v1/projectCreateProjectCreate a project
GET /open/v1/project/{projectId}GetProjectGet info about a specific project
GET /open/v1/project/{projectId}/dataGetProjectDataGet info, tasks, and columns for a specific project
POST /open/v1/taskCreateTaskCreate a new task
GET /open/v1/project/{projectId}/task/{taskId}GetTaskGet Task By Project ID And Task ID
Esquema API original
{
"openapi": "3.1.0",
"info": {
"title": "TickTick",
"description": "Access and manage a user's tasks, lists, and other related resources in TickTick",
"version": "v0.2.0"
},
"servers": [
{
"url": "https://api.ticktick.com"
}
],
"paths": {
"/open/v1/project": {
"get": {
"description": "Get all projects for the user",
"operationId": "GetProjects",
"responses": {
"200": {
"description": "An array of projects",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Project"
}
}
}
}
}
},
"security": [
{
"OAuth2": [
"tasks:read"
]
}
]
},
"post": {
"description": "Create a project",
"operationId": "CreateProject",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"color": {
"type": "string"
},
"sortOrder": {
"type": "integer"
},
"viewMode": {
"type": "string"
},
"kind": {
"type": "string"
}
},
"required": [
"name"
]
}
}
}
},
"responses": {
"200": {
"description": "Project created successfully",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Project"
}
}
}
}
},
"security": [
{
"OAuth2": [
"tasks:write"
]
}
]
}
},
"/open/v1/project/{projectId}": {
"get": {
"description": "Get info about a specific project",
"operationId": "GetProject",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Details of a specific project",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Project"
}
}
}
}
},
"security": [
{
"OAuth2": [
"tasks:read"
]
}
]
}
},
"/open/v1/project/{projectId}/data": {
"get": {
"description": "Get info, tasks, and columns for a specific project",
"operationId": "GetProjectData",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Project data including tasks and columns",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProjectData"
}
}
}
}
},
"security": [
{
"OAuth2": [
"tasks:read"
]
}
]
}
},
"/open/v1/task": {
"post": {
"description": "Create a new task",
"operationId": "CreateTask",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"title": {
"type": "string"
}
},
"required": [
"title"
]
}
}
}
},
"responses": {
"200": {
"description": "Task created successfully",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Task"
}
}
}
}
},
"security": [
{
"OAuth2": [
"tasks:write"
]
}
]
}
},
"/open/v1/project/{projectId}/task/{taskId}": {
"get": {
"description": "Get Task By Project ID And Task ID",
"operationId": "GetTask",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "taskId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Details of the specified task",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Task"
}
}
}
}
},
"security": [
{
"OAuth2": [
"tasks:read"
]
}
]
}
}
},
"components": {
"schemas": {
"Project": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"color": {
"type": "string"
},
"sortOrder": {
"type": "integer"
},
"viewMode": {
"type": "string"
},
"kind": {
"type": "string"
}
}
},
"Task": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"projectId": {
"type": "string"
},
"title": {
"type": "string"
},
"content": {
"type": "string"
},
"desc": {
"type": "string"
},
"isAllDay": {
"type": "boolean"
},
"startDate": {
"type": "string",
"format": "date-time"
},
"dueDate": {
"type": "string",
"format": "date-time"
},
"timeZone": {
"type": "string"
},
"reminders": {
"type": "array",
"items": {
"type": "string"
}
},
"repeatFlag": {
"type": "string"
},
"priority": {
"type": "integer"
},
"status": {
"type": "integer"
},
"completedTime": {
"type": "string",
"format": "date-time"
},
"sortOrder": {
"type": "integer"
},
"items": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ChecklistItem"
}
}
}
},
"ProjectData": {
"type": "object",
"properties": {
"project": {
"$ref": "#/components/schemas/Project"
},
"tasks": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Task"
}
},
"columns": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Column"
}
}
}
},
"ChecklistItem": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"status": {
"type": "integer"
},
"completedTime": {
"type": "string",
"format": "date-time"
},
"isAllDay": {
"type": "boolean"
},
"sortOrder": {
"type": "integer"
},
"startDate": {
"type": "string",
"format": "date-time"
},
"timeZone": {
"type": "string"
}
}
},
"Column": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"projectId": {
"type": "string"
},
"name": {
"type": "string"
},
"sortOrder": {
"type": "integer"
}
}
}
},
"securitySchemes": {
"OAuth2": {
"type": "oauth2",
"flows": {
"authorizationCode": {
"authorizationUrl": "https://ticktick.com/oauth/authorize",
"tokenUrl": "https://ticktick.com/oauth/token",
"scopes": {
"tasks:read": "Read tasks",
"tasks:write": "Write tasks"
}
}
}
}
}
}
}