diff --git a/src/authsome/auth/bundled_providers/cloudflare.json b/src/authsome/auth/bundled_providers/cloudflare.json new file mode 100644 index 00000000..6d3b470c --- /dev/null +++ b/src/authsome/auth/bundled_providers/cloudflare.json @@ -0,0 +1,20 @@ +{ + "schema_version": 1, + "name": "cloudflare", + "display_name": "Cloudflare", + "logo": "img.logo.dev/name/cloudflare", + "description": "Cloudflare API token access for managing zones, DNS, Workers, and account resources.", + "auth_type": "api_key", + "flow": "api_key", + "api_url": "https://api.cloudflare.com/client/v4", + "api_key": { + "header_name": "Authorization", + "header_prefix": "Bearer", + "env_var": "CLOUDFLARE_API_TOKEN", + "key_pattern": "^[A-Za-z0-9_-]{40}$", + "key_pattern_hint": "Cloudflare API tokens are 40-character alphanumeric strings generated in the Cloudflare dashboard under My Profile > API Tokens." + }, + "export": { + "CLOUDFLARE_API_TOKEN": "API_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/confluence.json b/src/authsome/auth/bundled_providers/confluence.json new file mode 100644 index 00000000..a62fdb5e --- /dev/null +++ b/src/authsome/auth/bundled_providers/confluence.json @@ -0,0 +1,30 @@ +{ + "schema_version": 1, + "name": "confluence", + "display_name": "Confluence", + "logo": "img.logo.dev/name/confluence", + "description": "Confluence Cloud access for reading and writing pages, spaces, and content via the Confluence REST API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://api.atlassian.com/ex/confluence", + "oauth": { + "authorization_url": "https://auth.atlassian.com/authorize", + "token_url": "https://auth.atlassian.com/oauth/token", + "revocation_url": null, + "device_authorization_url": null, + "scopes": [ + "read:confluence-content.all", + "write:confluence-content", + "read:confluence-space.summary", + "read:confluence-user", + "search:confluence", + "offline_access" + ], + "pkce": true, + "supports_device_code": false, + "supports_dcr": false + }, + "export": { + "CONFLUENCE_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/google-admin.json b/src/authsome/auth/bundled_providers/google-admin.json new file mode 100644 index 00000000..dcb8f5a2 --- /dev/null +++ b/src/authsome/auth/bundled_providers/google-admin.json @@ -0,0 +1,28 @@ +{ + "schema_version": 1, + "name": "google-admin", + "display_name": "Google Admin", + "logo": "img.logo.dev/name/google", + "description": "Google Workspace Admin access for managing users, groups, and organizational units via the Admin SDK.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://admin.googleapis.com/admin/directory/v1", + "oauth": { + "authorization_url": "https://accounts.google.com/o/oauth2/v2/auth", + "token_url": "https://oauth2.googleapis.com/token", + "revocation_url": "https://oauth2.googleapis.com/revoke", + "device_authorization_url": "https://oauth2.googleapis.com/device/code", + "scopes": [ + "openid", + "profile", + "https://www.googleapis.com/auth/admin.directory.user", + "https://www.googleapis.com/auth/admin.directory.group" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "GOOGLE_ADMIN_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/google-analytics.json b/src/authsome/auth/bundled_providers/google-analytics.json new file mode 100644 index 00000000..0f8e46ec --- /dev/null +++ b/src/authsome/auth/bundled_providers/google-analytics.json @@ -0,0 +1,27 @@ +{ + "schema_version": 1, + "name": "google-analytics", + "display_name": "Google Analytics", + "logo": "img.logo.dev/name/google-analytics", + "description": "Google Analytics access for reading web analytics data via the Analytics Data API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://analyticsdata.googleapis.com/v1beta", + "oauth": { + "authorization_url": "https://accounts.google.com/o/oauth2/v2/auth", + "token_url": "https://oauth2.googleapis.com/token", + "revocation_url": "https://oauth2.googleapis.com/revoke", + "device_authorization_url": "https://oauth2.googleapis.com/device/code", + "scopes": [ + "openid", + "profile", + "https://www.googleapis.com/auth/analytics.readonly" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "GOOGLE_ANALYTICS_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/google-calendar.json b/src/authsome/auth/bundled_providers/google-calendar.json new file mode 100644 index 00000000..d201c491 --- /dev/null +++ b/src/authsome/auth/bundled_providers/google-calendar.json @@ -0,0 +1,27 @@ +{ + "schema_version": 1, + "name": "google-calendar", + "display_name": "Google Calendar", + "logo": "img.logo.dev/name/google-calendar", + "description": "Google Calendar access for reading and managing calendar events via the Calendar API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://www.googleapis.com/calendar/v3", + "oauth": { + "authorization_url": "https://accounts.google.com/o/oauth2/v2/auth", + "token_url": "https://oauth2.googleapis.com/token", + "revocation_url": "https://oauth2.googleapis.com/revoke", + "device_authorization_url": "https://oauth2.googleapis.com/device/code", + "scopes": [ + "openid", + "profile", + "https://www.googleapis.com/auth/calendar" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "GOOGLE_CALENDAR_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/google-chat.json b/src/authsome/auth/bundled_providers/google-chat.json new file mode 100644 index 00000000..fbf2bab2 --- /dev/null +++ b/src/authsome/auth/bundled_providers/google-chat.json @@ -0,0 +1,27 @@ +{ + "schema_version": 1, + "name": "google-chat", + "display_name": "Google Chat", + "logo": "img.logo.dev/name/google-chat", + "description": "Google Chat access for sending and managing messages and spaces via the Chat API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://chat.googleapis.com/v1", + "oauth": { + "authorization_url": "https://accounts.google.com/o/oauth2/v2/auth", + "token_url": "https://oauth2.googleapis.com/token", + "revocation_url": "https://oauth2.googleapis.com/revoke", + "device_authorization_url": "https://oauth2.googleapis.com/device/code", + "scopes": [ + "openid", + "profile", + "https://www.googleapis.com/auth/chat.messages" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "GOOGLE_CHAT_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/google-classroom.json b/src/authsome/auth/bundled_providers/google-classroom.json new file mode 100644 index 00000000..c7e7fc93 --- /dev/null +++ b/src/authsome/auth/bundled_providers/google-classroom.json @@ -0,0 +1,28 @@ +{ + "schema_version": 1, + "name": "google-classroom", + "display_name": "Google Classroom", + "logo": "img.logo.dev/name/google-classroom", + "description": "Google Classroom access for managing courses, assignments, and student rosters via the Classroom API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://classroom.googleapis.com/v1", + "oauth": { + "authorization_url": "https://accounts.google.com/o/oauth2/v2/auth", + "token_url": "https://oauth2.googleapis.com/token", + "revocation_url": "https://oauth2.googleapis.com/revoke", + "device_authorization_url": "https://oauth2.googleapis.com/device/code", + "scopes": [ + "openid", + "profile", + "https://www.googleapis.com/auth/classroom.courses", + "https://www.googleapis.com/auth/classroom.rosters" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "GOOGLE_CLASSROOM_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/google-docs.json b/src/authsome/auth/bundled_providers/google-docs.json new file mode 100644 index 00000000..1e602194 --- /dev/null +++ b/src/authsome/auth/bundled_providers/google-docs.json @@ -0,0 +1,27 @@ +{ + "schema_version": 1, + "name": "google-docs", + "display_name": "Google Docs", + "logo": "img.logo.dev/name/google-docs", + "description": "Google Docs access for reading and editing documents via the Docs API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://docs.googleapis.com/v1", + "oauth": { + "authorization_url": "https://accounts.google.com/o/oauth2/v2/auth", + "token_url": "https://oauth2.googleapis.com/token", + "revocation_url": "https://oauth2.googleapis.com/revoke", + "device_authorization_url": "https://oauth2.googleapis.com/device/code", + "scopes": [ + "openid", + "profile", + "https://www.googleapis.com/auth/documents" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "GOOGLE_DOCS_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/google-drive.json b/src/authsome/auth/bundled_providers/google-drive.json new file mode 100644 index 00000000..85d29709 --- /dev/null +++ b/src/authsome/auth/bundled_providers/google-drive.json @@ -0,0 +1,27 @@ +{ + "schema_version": 1, + "name": "google-drive", + "display_name": "Google Drive", + "logo": "img.logo.dev/name/google-drive", + "description": "Google Drive access for managing files and folders via the Drive API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://www.googleapis.com/drive/v3", + "oauth": { + "authorization_url": "https://accounts.google.com/o/oauth2/v2/auth", + "token_url": "https://oauth2.googleapis.com/token", + "revocation_url": "https://oauth2.googleapis.com/revoke", + "device_authorization_url": "https://oauth2.googleapis.com/device/code", + "scopes": [ + "openid", + "profile", + "https://www.googleapis.com/auth/drive" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "GOOGLE_DRIVE_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/google-forms.json b/src/authsome/auth/bundled_providers/google-forms.json new file mode 100644 index 00000000..6a707758 --- /dev/null +++ b/src/authsome/auth/bundled_providers/google-forms.json @@ -0,0 +1,28 @@ +{ + "schema_version": 1, + "name": "google-forms", + "display_name": "Google Forms", + "logo": "img.logo.dev/name/google-forms", + "description": "Google Forms access for creating forms and reading responses via the Forms API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://forms.googleapis.com/v1", + "oauth": { + "authorization_url": "https://accounts.google.com/o/oauth2/v2/auth", + "token_url": "https://oauth2.googleapis.com/token", + "revocation_url": "https://oauth2.googleapis.com/revoke", + "device_authorization_url": "https://oauth2.googleapis.com/device/code", + "scopes": [ + "openid", + "profile", + "https://www.googleapis.com/auth/forms.body", + "https://www.googleapis.com/auth/forms.responses.readonly" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "GOOGLE_FORMS_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/google-gmail.json b/src/authsome/auth/bundled_providers/google-gmail.json new file mode 100644 index 00000000..10200bcc --- /dev/null +++ b/src/authsome/auth/bundled_providers/google-gmail.json @@ -0,0 +1,27 @@ +{ + "schema_version": 1, + "name": "google-gmail", + "display_name": "Gmail", + "logo": "img.logo.dev/name/gmail", + "description": "Gmail access for reading, composing, and managing email via the Gmail API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://gmail.googleapis.com/gmail/v1", + "oauth": { + "authorization_url": "https://accounts.google.com/o/oauth2/v2/auth", + "token_url": "https://oauth2.googleapis.com/token", + "revocation_url": "https://oauth2.googleapis.com/revoke", + "device_authorization_url": "https://oauth2.googleapis.com/device/code", + "scopes": [ + "openid", + "profile", + "https://mail.google.com/" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "GMAIL_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/google-meet.json b/src/authsome/auth/bundled_providers/google-meet.json new file mode 100644 index 00000000..148fc13e --- /dev/null +++ b/src/authsome/auth/bundled_providers/google-meet.json @@ -0,0 +1,27 @@ +{ + "schema_version": 1, + "name": "google-meet", + "display_name": "Google Meet", + "logo": "img.logo.dev/name/google-meet", + "description": "Google Meet access for creating and managing video meeting spaces via the Meet REST API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://meet.googleapis.com/v2", + "oauth": { + "authorization_url": "https://accounts.google.com/o/oauth2/v2/auth", + "token_url": "https://oauth2.googleapis.com/token", + "revocation_url": "https://oauth2.googleapis.com/revoke", + "device_authorization_url": "https://oauth2.googleapis.com/device/code", + "scopes": [ + "openid", + "profile", + "https://www.googleapis.com/auth/meetings.space.created" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "GOOGLE_MEET_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/google-photos.json b/src/authsome/auth/bundled_providers/google-photos.json new file mode 100644 index 00000000..8a77278f --- /dev/null +++ b/src/authsome/auth/bundled_providers/google-photos.json @@ -0,0 +1,27 @@ +{ + "schema_version": 1, + "name": "google-photos", + "display_name": "Google Photos", + "logo": "img.logo.dev/name/google-photos", + "description": "Google Photos access for reading and managing photo libraries via the Photos Library API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://photoslibrary.googleapis.com/v1", + "oauth": { + "authorization_url": "https://accounts.google.com/o/oauth2/v2/auth", + "token_url": "https://oauth2.googleapis.com/token", + "revocation_url": "https://oauth2.googleapis.com/revoke", + "device_authorization_url": "https://oauth2.googleapis.com/device/code", + "scopes": [ + "openid", + "profile", + "https://www.googleapis.com/auth/photoslibrary.readonly" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "GOOGLE_PHOTOS_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/google-search-console.json b/src/authsome/auth/bundled_providers/google-search-console.json new file mode 100644 index 00000000..737a2be0 --- /dev/null +++ b/src/authsome/auth/bundled_providers/google-search-console.json @@ -0,0 +1,27 @@ +{ + "schema_version": 1, + "name": "google-search-console", + "display_name": "Google Search Console", + "logo": "img.logo.dev/name/google-search-console", + "description": "Google Search Console access for reading search analytics and sitemaps via the Search Console API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://searchconsole.googleapis.com/v1", + "oauth": { + "authorization_url": "https://accounts.google.com/o/oauth2/v2/auth", + "token_url": "https://oauth2.googleapis.com/token", + "revocation_url": "https://oauth2.googleapis.com/revoke", + "device_authorization_url": "https://oauth2.googleapis.com/device/code", + "scopes": [ + "openid", + "profile", + "https://www.googleapis.com/auth/webmasters.readonly" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "GOOGLE_SEARCH_CONSOLE_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/google-sheets.json b/src/authsome/auth/bundled_providers/google-sheets.json new file mode 100644 index 00000000..1f33a96b --- /dev/null +++ b/src/authsome/auth/bundled_providers/google-sheets.json @@ -0,0 +1,27 @@ +{ + "schema_version": 1, + "name": "google-sheets", + "display_name": "Google Sheets", + "logo": "img.logo.dev/name/google-sheets", + "description": "Google Sheets access for reading and editing spreadsheets via the Sheets API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://sheets.googleapis.com/v4", + "oauth": { + "authorization_url": "https://accounts.google.com/o/oauth2/v2/auth", + "token_url": "https://oauth2.googleapis.com/token", + "revocation_url": "https://oauth2.googleapis.com/revoke", + "device_authorization_url": "https://oauth2.googleapis.com/device/code", + "scopes": [ + "openid", + "profile", + "https://www.googleapis.com/auth/spreadsheets" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "GOOGLE_SHEETS_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/google-slides.json b/src/authsome/auth/bundled_providers/google-slides.json new file mode 100644 index 00000000..4f98d551 --- /dev/null +++ b/src/authsome/auth/bundled_providers/google-slides.json @@ -0,0 +1,27 @@ +{ + "schema_version": 1, + "name": "google-slides", + "display_name": "Google Slides", + "logo": "img.logo.dev/name/google-slides", + "description": "Google Slides access for reading and editing presentations via the Slides API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://slides.googleapis.com/v1", + "oauth": { + "authorization_url": "https://accounts.google.com/o/oauth2/v2/auth", + "token_url": "https://oauth2.googleapis.com/token", + "revocation_url": "https://oauth2.googleapis.com/revoke", + "device_authorization_url": "https://oauth2.googleapis.com/device/code", + "scopes": [ + "openid", + "profile", + "https://www.googleapis.com/auth/presentations" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "GOOGLE_SLIDES_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/google-tasks.json b/src/authsome/auth/bundled_providers/google-tasks.json new file mode 100644 index 00000000..3d0d3bb0 --- /dev/null +++ b/src/authsome/auth/bundled_providers/google-tasks.json @@ -0,0 +1,27 @@ +{ + "schema_version": 1, + "name": "google-tasks", + "display_name": "Google Tasks", + "logo": "img.logo.dev/name/google-tasks", + "description": "Google Tasks access for reading and managing task lists and tasks via the Tasks API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://tasks.googleapis.com/tasks/v1", + "oauth": { + "authorization_url": "https://accounts.google.com/o/oauth2/v2/auth", + "token_url": "https://oauth2.googleapis.com/token", + "revocation_url": "https://oauth2.googleapis.com/revoke", + "device_authorization_url": "https://oauth2.googleapis.com/device/code", + "scopes": [ + "openid", + "profile", + "https://www.googleapis.com/auth/tasks" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "GOOGLE_TASKS_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/google-vertex-ai.json b/src/authsome/auth/bundled_providers/google-vertex-ai.json new file mode 100644 index 00000000..776d9b31 --- /dev/null +++ b/src/authsome/auth/bundled_providers/google-vertex-ai.json @@ -0,0 +1,27 @@ +{ + "schema_version": 1, + "name": "google-vertex-ai", + "display_name": "Vertex AI", + "logo": "img.logo.dev/name/google-cloud", + "description": "Google Vertex AI access for generative models, embeddings, and ML pipelines via the Vertex AI API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://us-central1-aiplatform.googleapis.com/v1", + "oauth": { + "authorization_url": "https://accounts.google.com/o/oauth2/v2/auth", + "token_url": "https://oauth2.googleapis.com/token", + "revocation_url": "https://oauth2.googleapis.com/revoke", + "device_authorization_url": "https://oauth2.googleapis.com/device/code", + "scopes": [ + "openid", + "profile", + "https://www.googleapis.com/auth/cloud-platform" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "VERTEX_AI_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/google-youtube.json b/src/authsome/auth/bundled_providers/google-youtube.json new file mode 100644 index 00000000..c74f0ccf --- /dev/null +++ b/src/authsome/auth/bundled_providers/google-youtube.json @@ -0,0 +1,27 @@ +{ + "schema_version": 1, + "name": "google-youtube", + "display_name": "YouTube", + "logo": "img.logo.dev/name/youtube", + "description": "YouTube Data API access for managing channels, videos, playlists, and comments.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://www.googleapis.com/youtube/v3", + "oauth": { + "authorization_url": "https://accounts.google.com/o/oauth2/v2/auth", + "token_url": "https://oauth2.googleapis.com/token", + "revocation_url": "https://oauth2.googleapis.com/revoke", + "device_authorization_url": "https://oauth2.googleapis.com/device/code", + "scopes": [ + "openid", + "profile", + "https://www.googleapis.com/auth/youtube" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "YOUTUBE_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/jira.json b/src/authsome/auth/bundled_providers/jira.json new file mode 100644 index 00000000..b1a5bffc --- /dev/null +++ b/src/authsome/auth/bundled_providers/jira.json @@ -0,0 +1,29 @@ +{ + "schema_version": 1, + "name": "jira", + "display_name": "Jira", + "logo": "img.logo.dev/name/jira", + "description": "Jira Cloud access for reading and managing issues, projects, and workflows via the Jira REST API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://api.atlassian.com/ex/jira", + "oauth": { + "authorization_url": "https://auth.atlassian.com/authorize", + "token_url": "https://auth.atlassian.com/oauth/token", + "revocation_url": null, + "device_authorization_url": null, + "scopes": [ + "read:jira-work", + "write:jira-work", + "read:jira-user", + "manage:jira-project", + "offline_access" + ], + "pkce": true, + "supports_device_code": false, + "supports_dcr": false + }, + "export": { + "JIRA_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/microsoft-calendar.json b/src/authsome/auth/bundled_providers/microsoft-calendar.json new file mode 100644 index 00000000..1719a25b --- /dev/null +++ b/src/authsome/auth/bundled_providers/microsoft-calendar.json @@ -0,0 +1,27 @@ +{ + "schema_version": 1, + "name": "microsoft-calendar", + "display_name": "Outlook Calendar", + "logo": "img.logo.dev/name/microsoft-outlook", + "description": "Outlook Calendar access for reading and managing calendar events and schedules via Microsoft Graph.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://graph.microsoft.com/v1.0/me/calendars", + "oauth": { + "authorization_url": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", + "token_url": "https://login.microsoftonline.com/common/oauth2/v2.0/token", + "revocation_url": null, + "device_authorization_url": "https://login.microsoftonline.com/common/oauth2/v2.0/devicecode", + "scopes": [ + "User.Read", + "Calendars.ReadWrite", + "offline_access" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "MICROSOFT_CALENDAR_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/microsoft-outlook.json b/src/authsome/auth/bundled_providers/microsoft-outlook.json new file mode 100644 index 00000000..5263434b --- /dev/null +++ b/src/authsome/auth/bundled_providers/microsoft-outlook.json @@ -0,0 +1,29 @@ +{ + "schema_version": 1, + "name": "microsoft-outlook", + "display_name": "Microsoft Outlook", + "logo": "img.logo.dev/name/microsoft-outlook", + "description": "Microsoft Outlook access for reading, sending, and managing email via Microsoft Graph.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://graph.microsoft.com/v1.0/me/messages", + "oauth": { + "authorization_url": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", + "token_url": "https://login.microsoftonline.com/common/oauth2/v2.0/token", + "revocation_url": null, + "device_authorization_url": "https://login.microsoftonline.com/common/oauth2/v2.0/devicecode", + "scopes": [ + "User.Read", + "Mail.ReadWrite", + "Mail.Send", + "MailboxSettings.ReadWrite", + "offline_access" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "MICROSOFT_OUTLOOK_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/microsoft-word.json b/src/authsome/auth/bundled_providers/microsoft-word.json new file mode 100644 index 00000000..6c881bcb --- /dev/null +++ b/src/authsome/auth/bundled_providers/microsoft-word.json @@ -0,0 +1,28 @@ +{ + "schema_version": 1, + "name": "microsoft-word", + "display_name": "Microsoft Word", + "logo": "img.logo.dev/name/microsoft-word", + "description": "Microsoft Word document access for reading and editing .docx files stored in OneDrive and SharePoint via Microsoft Graph.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://graph.microsoft.com/v1.0/me/drive", + "oauth": { + "authorization_url": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", + "token_url": "https://login.microsoftonline.com/common/oauth2/v2.0/token", + "revocation_url": null, + "device_authorization_url": "https://login.microsoftonline.com/common/oauth2/v2.0/devicecode", + "scopes": [ + "User.Read", + "Files.ReadWrite.All", + "Sites.ReadWrite.All", + "offline_access" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "MICROSOFT_WORD_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/todoist.json b/src/authsome/auth/bundled_providers/todoist.json new file mode 100644 index 00000000..b80ce588 --- /dev/null +++ b/src/authsome/auth/bundled_providers/todoist.json @@ -0,0 +1,26 @@ +{ + "schema_version": 1, + "name": "todoist", + "display_name": "Todoist", + "logo": "img.logo.dev/name/todoist", + "description": "Todoist access for managing tasks, projects, and labels via the Todoist REST API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://api.todoist.com/rest/v2", + "oauth": { + "authorization_url": "https://app.todoist.com/oauth/authorize", + "token_url": "https://api.todoist.com/oauth/access_token", + "revocation_url": "https://api.todoist.com/api/v1/revoke", + "device_authorization_url": null, + "scopes": [ + "data:read_write", + "task:add" + ], + "pkce": true, + "supports_device_code": false, + "supports_dcr": false + }, + "export": { + "TODOIST_ACCESS_TOKEN": "ACCESS_TOKEN" + } +} diff --git a/src/authsome/auth/bundled_providers/zoom.json b/src/authsome/auth/bundled_providers/zoom.json new file mode 100644 index 00000000..a737e4ff --- /dev/null +++ b/src/authsome/auth/bundled_providers/zoom.json @@ -0,0 +1,29 @@ +{ + "schema_version": 1, + "name": "zoom", + "display_name": "Zoom", + "logo": "img.logo.dev/name/zoom", + "description": "Zoom access for creating and managing meetings, users, and recordings via the Zoom API.", + "auth_type": "oauth2", + "flow": "pkce", + "api_url": "https://api.zoom.us/v2", + "oauth": { + "authorization_url": "https://zoom.us/oauth/authorize", + "token_url": "https://zoom.us/oauth/token", + "revocation_url": "https://zoom.us/oauth/revoke", + "device_authorization_url": "https://zoom.us/oauth/devicecode", + "scopes": [ + "user:read:user", + "meeting:read:meeting", + "meeting:write:meeting", + "meeting:read:list_meetings", + "cloud_recording:read:recording" + ], + "pkce": true, + "supports_device_code": true, + "supports_dcr": false + }, + "export": { + "ZOOM_ACCESS_TOKEN": "ACCESS_TOKEN" + } +}