Ga naar inhoud

Google Workspace

Agenda, Drive, Gmail en Contacten, per organisatie gekoppeld met je eigen OAuth-client en per medewerker aangezet.

25 endpoints, verdeeld over 1 groep. Een recht geschreven als module.resource.action:own heeft een bereik: :own dekt rijen die van jou zijn, :any die van iedereen, en :any voldoet aan een controle op :own.

EndpointRecht
GET /google/calendar/eventsgoogle.calendar.read
POST /google/calendar/webhookBewust open
GET /google/connectionsgoogle.settings.manage
GET /google/connections/megoogle.connection.manage
PATCH /google/connections/megoogle.connection.manage
POST /google/connections/me/disconnectgoogle.connection.manage
GET /google/drive/browsegoogle.drive.read
PUT /google/drive/foldergoogle.drive.write
POST /google/drive/foldersgoogle.drive.write
GET /google/drive/linksgoogle.drive.read
POST /google/drive/linksgoogle.drive.write
DELETE /google/drive/links/{link_id}google.drive.write
POST /google/drive/provisiongoogle.drive.write
POST /google/drive/provision-allgoogle.settings.manage
POST /google/drive/upload-sessiongoogle.drive.write
POST /google/gmail/importinteractions.interaction.write
GET /google/gmail/lookupgoogle.connection.manage
POST /google/gmail/refreshgoogle.connection.manage
GET /google/gmail/searchgoogle.connection.manage
GET /google/gmail/statusgoogle.connection.manage
GET /google/gmail/threads/{thread_id}google.connection.manage
GET /google/oauth/callbackgoogle.connection.manage
GET /google/oauth/connectgoogle.connection.manage
GET /google/settingsgoogle.settings.manage
PUT /google/settingsgoogle.settings.manage
Parameters en schema’s per endpoint

Calendar Events — The viewer’s own cached Google events. Reads the local cache, never Google live.

Recht: google.calendar.read

Queryparameters:

NaamTypeBetekenis
date_fromstring · verplicht
date_tostring · verplicht

Antwoord: 200 · CalendarFeedItem[]

Calendar Webhook

Recht: Bewust open

Antwoord: 200

List Connections

Recht: google.settings.manage

Antwoord: 200 · app__integrations__google__schemas__ConnectionRead[]

My Connection

Recht: google.connection.manage

Antwoord: 200 · MyConnectionRead

Update My Connection

Recht: google.connection.manage

Request body: MyConnectionUpdate

Antwoord: 200 · MyConnectionRead

POST /api/v1/google/connections/me/disconnect

Section titled “POST /api/v1/google/connections/me/disconnect”

Disconnect My Connection

Recht: google.connection.manage

Antwoord: 204

Browse — Live folder contents as the viewing user — Drive’s permissions are authoritative.

Recht: google.drive.read

Queryparameters:

NaamTypeBetekenis
folder_idstring
qstring
refreshboolean(default false)

Antwoord: 200 · DriveBrowseResult

Set Folder — Point a record at an existing Drive folder — the picker’s target.

Recht: google.drive.write

Request body: DriveFolderSet

Antwoord: 200 · DriveLinkRead

Create Folder — Create a subfolder inside the folder being browsed, as the viewing user (issue #21).

Recht: google.drive.write

Request body: DriveFolderCreate

Antwoord: 201 · DriveFolder

List Links

Recht: google.drive.read

Queryparameters:

NaamTypeBetekenis
entity_typestring · verplicht
entity_idstring · verplicht
rollupboolean(default false)

Antwoord: 200 · DriveLinkRead[]

Create Link

Recht: google.drive.write

Request body: DriveLinkCreate

Antwoord: 201 · DriveLinkRead

Section titled “DELETE /api/v1/google/drive/links/{link_id}”

Delete Link — Unlink only. The Drive file is never touched (issue #21 — the dialog says so too).

Recht: google.drive.write

Padparameters: link_id

Antwoord: 204

Provision Entity — Queue one entity’s folder — the panel’s “create folder” button.

Recht: google.drive.write

Request body: DriveProvisionRequest

Antwoord: 202

Provision All — Backfill: a folder for every client that has none (Instellingen → Google).

Recht: google.settings.manage

Antwoord: 200 · DriveBulkProvisionResult

Create Upload Session

Recht: google.drive.write

Request body: DriveUploadSessionCreate

Antwoord: 200 · DriveUploadSession

Import Gmail Message — Log one message the poller skipped, filed where the caller says.

Recht: interactions.interaction.write

Request body: GmailImportRequest

Antwoord: 201 · GmailImportResult

Lookup Gmail Message — Resolve a pasted reference to the message(s) it names, in the caller’s own mailbox.

Recht: google.connection.manage

Queryparameters:

NaamTypeBetekenis
referencestring · verplichtA Gmail link, a message/thread id, or an RFC-822 Message-ID

Antwoord: 200 · GmailLookupResult

Refresh Gmail — Poll this mailbox once, now — rate-limited to one manual poll per minute.

Recht: google.connection.manage

Antwoord: 200 · GmailRefreshResult

Search Gmail — Find a message in the caller’s own mailbox, by who it was with and when (#372).

Recht: google.connection.manage

Queryparameters:

NaamTypeBetekenis
participantstring
subjectstring
afterstring
beforestring

Antwoord: 200 · GmailSearchResult

Read Gmail Status — When this mailbox was last polled, and whether asking for another one is worth it.

Recht: google.connection.manage

Antwoord: 200 · GmailSyncStatus

GET /api/v1/google/gmail/threads/{thread_id}

Section titled “GET /api/v1/google/gmail/threads/{thread_id}”

Read Gmail Thread — Every message of one conversation, marked with what is already on the timeline.

Recht: google.connection.manage

Padparameters: thread_id

Antwoord: 200 · GmailLookupResult

Google Oauth Callback — Store the grant and land the browser back where the connect started.

Recht: google.connection.manage

Antwoord: 200

Oauth Connect — 302 to Google’s consent screen, asking exactly the enabled surfaces’ scopes.

Recht: google.connection.manage

Queryparameters:

NaamTypeBetekenis
include_gmailboolean(default false)
include_marketingboolean(default false)
include_analyticsboolean(default false)
include_search_consoleboolean(default false)
include_adsboolean(default false)
include_tag_managerboolean(default false)
nextstring(default “)

Antwoord: 200

Get Settings

Recht: google.settings.manage

Antwoord: 200 · GoogleSettingsRead

Save Settings

Recht: google.settings.manage

Request body: GoogleSettingsWrite

Antwoord: 200 · GoogleSettingsRead