Clojure wrapper for the Google Meet API (v2).
Provides idiomatic Clojure functions for reading and managing meeting spaces, conference records, participants, recordings, and transcripts.
Auth: use csl/scoped-delegated-credentials with the appropriate scope:
All list functions return {:data [...] :next-page-token "..."}; the caller is responsible for pagination by passing :page-token from one call to the next. :next-page-token is absent when there are no further pages.
All functions return {:data ...} on success or {:error ...} on failure.
Clojure wrapper for the Google Meet API (v2).
Provides idiomatic Clojure functions for reading and managing meeting spaces,
conference records, participants, recordings, and transcripts.
Auth: use csl/scoped-delegated-credentials with the appropriate scope:
- MeetScopes/MEETINGS_SPACE_READONLY (read-only access)
- MeetScopes/MEETINGS_SPACE_CREATED (read + manage created spaces)
- MeetScopes/MEETINGS_SPACE_SETTINGS (update space settings)
All list functions return {:data [...] :next-page-token "..."}; the caller
is responsible for pagination by passing :page-token from one call to the next.
:next-page-token is absent when there are no further pages.
All functions return {:data ...} on success or {:error ...} on failure.(create-space client & [opts])Create a new meeting space with default settings.
opts:
Create a new meeting space with default settings. opts: - :read-timeout-ms — int, override the HTTP client's default read timeout for this request.
(end-active-conference client space-name & [opts])End the active conference in a space.
space-name — resource name (e.g. "spaces/abc123").
opts:
End the active conference in a space. space-name — resource name (e.g. "spaces/abc123"). opts: - :read-timeout-ms — int, override the HTTP client's default read timeout for this request.
(get-conference-record client record-name & [opts])Get a conference record.
record-name — resource name (e.g. "conferenceRecords/abc123").
opts:
Get a conference record. record-name — resource name (e.g. "conferenceRecords/abc123"). opts: - :fields —partial response field mask string.
(get-participant client participant-name & [opts])Get a participant.
participant-name — resource name (e.g. "conferenceRecords/abc123/participants/xyz").
opts:
Get a participant. participant-name — resource name (e.g. "conferenceRecords/abc123/participants/xyz"). opts: - :fields —partial response field mask string.
(get-participant-session client session-name & [opts])Get a participant session.
session-name — resource name (e.g. "conferenceRecords/abc123/participants/xyz/participantSessions/s1").
opts:
Get a participant session. session-name — resource name (e.g. "conferenceRecords/abc123/participants/xyz/participantSessions/s1"). opts: - :fields —partial response field mask string.
(get-recording client recording-name & [opts])Get a recording.
recording-name — resource name (e.g. "conferenceRecords/abc123/recordings/rec1").
opts:
Get a recording. recording-name — resource name (e.g. "conferenceRecords/abc123/recordings/rec1"). opts: - :fields —partial response field mask string.
(get-space client space-name & [opts])Get a meeting space.
space-name — resource name (e.g. "spaces/abc123") or a meeting code.
opts:
Get a meeting space. space-name — resource name (e.g. "spaces/abc123") or a meeting code. opts: - :fields —partial response field mask string (e.g. "name,meetingCode,config(accessType)").
(get-transcript client transcript-name & [opts])Get a transcript.
transcript-name — resource name (e.g. "conferenceRecords/abc123/transcripts/t1").
opts:
Get a transcript. transcript-name — resource name (e.g. "conferenceRecords/abc123/transcripts/t1"). opts: - :fields —partial response field mask string.
(get-transcript-entry client entry-name & [opts])Get a transcript entry.
entry-name — resource name (e.g. "conferenceRecords/abc123/transcripts/t1/entries/e1").
opts:
Get a transcript entry. entry-name — resource name (e.g. "conferenceRecords/abc123/transcripts/t1/entries/e1"). opts: - :fields —partial response field mask string.
(list-conference-records client & [opts])List conference records across all spaces.
opts:
List conference records across all spaces. opts: - :page-token — token from a previous response to fetch the next page - :page-size — max number of records to return per page - :filter — filter expression (e.g. "space.name = \"spaces/abc123\"") - :fields — partial response field mask string (e.g. "conferenceRecords(name,startTime,endTime),nextPageToken")
(list-participant-sessions client participant-name & [opts])List sessions for a participant (one session per device or browser tab).
participant-name — resource name (e.g. "conferenceRecords/abc123/participants/xyz") opts:
List sessions for a participant (one session per device or browser tab). participant-name — resource name (e.g. "conferenceRecords/abc123/participants/xyz") opts: - :page-token — token from a previous response to fetch the next page - :page-size — max number of sessions to return per page - :filter — filter expression - :fields — partial response field mask string
(list-participants client record-name & [opts])List participants in a conference record.
record-name — resource name (e.g. "conferenceRecords/abc123") opts:
List participants in a conference record. record-name — resource name (e.g. "conferenceRecords/abc123") opts: - :page-token — token from a previous response to fetch the next page - :page-size — max number of participants to return per page - :filter — filter expression (e.g. "signedinUser.displayName = 'Alice'") - :fields — partial response field mask string
(list-recordings client record-name & [opts])List recordings for a conference record.
record-name — resource name (e.g. "conferenceRecords/abc123") opts:
List recordings for a conference record. record-name — resource name (e.g. "conferenceRecords/abc123") opts: - :page-token — token from a previous response to fetch the next page - :page-size — max number of recordings to return per page - :fields — partial response field mask string
(list-transcript-entries client transcript-name & [opts])List entries within a transcript.
transcript-name — resource name (e.g. "conferenceRecords/abc123/transcripts/t1") opts:
List entries within a transcript. transcript-name — resource name (e.g. "conferenceRecords/abc123/transcripts/t1") opts: - :page-token — token from a previous response to fetch the next page - :page-size — max number of entries to return per page - :fields — partial response field mask string
(list-transcripts client record-name & [opts])List transcripts for a conference record.
record-name — resource name (e.g. "conferenceRecords/abc123") opts:
List transcripts for a conference record. record-name — resource name (e.g. "conferenceRecords/abc123") opts: - :page-token — token from a previous response to fetch the next page - :page-size — max number of transcripts to return per page - :fields — partial response field mask string
(meet-client credentials)(meet-client credentials opts)Build an authenticated Meet v2 REST client.
credentials — a com.google.auth.oauth2.GoogleCredentials instance, typically from csl/scoped-delegated-credentials or csl/user-credentials.
opts (optional):
Per-request opts on individual call sites override the client-level defaults.
Build an authenticated Meet v2 REST client. credentials — a com.google.auth.oauth2.GoogleCredentials instance, typically from csl/scoped-delegated-credentials or csl/user-credentials. opts (optional): - :read-timeout-ms per-client default read timeout (default 120000 / 120s) - :connect-timeout-ms per-client default connect timeout (default 30000 / 30s) Per-request opts on individual call sites override the client-level defaults.
(update-space client space-name updates update-mask & [opts])Update fields on a meeting space.
space-name — resource name (e.g. "spaces/abc123") updates — map with kebab-case keyword keys (coerced to camelCase internally): {:config {:access-type "OPEN" :entry-point-access "ALL"}} update-mask — comma-separated list of field paths to update (e.g. "config.accessType,config.entryPointAccess")
opts:
Update fields on a meeting space.
space-name — resource name (e.g. "spaces/abc123")
updates — map with kebab-case keyword keys (coerced to camelCase internally):
{:config {:access-type "OPEN" :entry-point-access "ALL"}}
update-mask — comma-separated list of field paths to update
(e.g. "config.accessType,config.entryPointAccess")
opts:
- :read-timeout-ms — int, override the HTTP client's default read timeout
for this request.cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |