add google tasks

This commit is contained in:
Taylor Wilsdon
2025-07-09 11:54:23 -04:00
parent f0cfe40045
commit 8adf719c58
6 changed files with 305 additions and 285 deletions

View File

@@ -52,6 +52,10 @@ FORMS_RESPONSES_READONLY_SCOPE = 'https://www.googleapis.com/auth/forms.response
SLIDES_SCOPE = 'https://www.googleapis.com/auth/presentations'
SLIDES_READONLY_SCOPE = 'https://www.googleapis.com/auth/presentations.readonly'
# Google Tasks API scopes
TASKS_SCOPE = 'https://www.googleapis.com/auth/tasks'
TASKS_READONLY_SCOPE = 'https://www.googleapis.com/auth/tasks.readonly'
# Base OAuth scopes required for user identification
BASE_SCOPES = [
USERINFO_EMAIL_SCOPE,
@@ -104,5 +108,10 @@ SLIDES_SCOPES = [
SLIDES_READONLY_SCOPE
]
TASKS_SCOPES = [
TASKS_SCOPE,
TASKS_READONLY_SCOPE
]
# Combined scopes for all supported Google Workspace operations
SCOPES = list(set(BASE_SCOPES + CALENDAR_SCOPES + DRIVE_SCOPES + GMAIL_SCOPES + DOCS_SCOPES + CHAT_SCOPES + SHEETS_SCOPES + FORMS_SCOPES + SLIDES_SCOPES))
SCOPES = list(set(BASE_SCOPES + CALENDAR_SCOPES + DRIVE_SCOPES + GMAIL_SCOPES + DOCS_SCOPES + CHAT_SCOPES + SHEETS_SCOPES + FORMS_SCOPES + SLIDES_SCOPES + TASKS_SCOPES))

View File

@@ -18,7 +18,8 @@ from auth.scopes import (
SHEETS_READONLY_SCOPE, SHEETS_WRITE_SCOPE,
CHAT_READONLY_SCOPE, CHAT_WRITE_SCOPE, CHAT_SPACES_SCOPE,
FORMS_BODY_SCOPE, FORMS_BODY_READONLY_SCOPE, FORMS_RESPONSES_READONLY_SCOPE,
SLIDES_SCOPE, SLIDES_READONLY_SCOPE
SLIDES_SCOPE, SLIDES_READONLY_SCOPE,
TASKS_SCOPE, TASKS_READONLY_SCOPE
)
# Service configuration mapping
@@ -30,7 +31,8 @@ SERVICE_CONFIGS = {
"sheets": {"service": "sheets", "version": "v4"},
"chat": {"service": "chat", "version": "v1"},
"forms": {"service": "forms", "version": "v1"},
"slides": {"service": "slides", "version": "v1"}
"slides": {"service": "slides", "version": "v1"},
"tasks": {"service": "tasks", "version": "v1"}
}
@@ -72,6 +74,10 @@ SCOPE_GROUPS = {
# Slides scopes
"slides": SLIDES_SCOPE,
"slides_read": SLIDES_READONLY_SCOPE,
# Tasks scopes
"tasks": TASKS_SCOPE,
"tasks_read": TASKS_READONLY_SCOPE,
}
# Service cache: {cache_key: (service, cached_time, user_email)}