Created
June 4, 2025 15:57
-
-
Save quintonwall/a671504759ee398fe8d6b1aa36562f4e to your computer and use it in GitHub Desktop.
Google Meet Airbyte Connector
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| version: 6.48.15 | |
| type: DeclarativeSource | |
| description: Solves https://github.com/airbytehq/airbyte/issues/45995 | |
| check: | |
| type: CheckStream | |
| stream_names: | |
| - transcripts | |
| definitions: | |
| streams: | |
| recordings: | |
| type: DeclarativeStream | |
| name: recordings | |
| retriever: | |
| type: SimpleRetriever | |
| decoder: | |
| type: JsonDecoder | |
| paginator: | |
| type: DefaultPaginator | |
| page_token_option: | |
| type: RequestOption | |
| field_name: pageToken | |
| inject_into: request_parameter | |
| pagination_strategy: | |
| type: CursorPagination | |
| cursor_value: "{{ response.get('nextPageToken') }}" | |
| stop_condition: "{{ response.get('nextPageToken') is not defined }}" | |
| requester: | |
| $ref: "#/definitions/base_requester" | |
| path: conferenceRecords | |
| http_method: GET | |
| record_selector: | |
| type: RecordSelector | |
| extractor: | |
| type: DpathExtractor | |
| field_path: | |
| - items | |
| primary_key: | |
| - id | |
| schema_loader: | |
| type: InlineSchemaLoader | |
| schema: | |
| $ref: "#/schemas/recordings" | |
| transcripts: | |
| type: DeclarativeStream | |
| name: transcripts | |
| retriever: | |
| type: SimpleRetriever | |
| decoder: | |
| type: JsonDecoder | |
| paginator: | |
| type: DefaultPaginator | |
| page_token_option: | |
| type: RequestOption | |
| field_name: pageToken | |
| inject_into: request_parameter | |
| pagination_strategy: | |
| type: CursorPagination | |
| cursor_value: "{{ response.get('nextPageToken') }}" | |
| stop_condition: "{{ response.get('nextPageToken') is not defined }}" | |
| requester: | |
| $ref: "#/definitions/base_requester" | |
| path: conferenceRecords/{{ config['conferencerecord'] }}/transcripts | |
| http_method: GET | |
| record_selector: | |
| type: RecordSelector | |
| extractor: | |
| type: DpathExtractor | |
| field_path: | |
| - items | |
| primary_key: | |
| - id | |
| schema_loader: | |
| type: InlineSchemaLoader | |
| schema: | |
| $ref: "#/schemas/transcripts" | |
| base_requester: | |
| type: HttpRequester | |
| url_base: https://meet.googleapis.com/v2/ | |
| authenticator: | |
| type: OAuthAuthenticator | |
| client_id: "{{ config[\"client_id\"] }}" | |
| grant_type: refresh_token | |
| client_secret: "{{ config[\"client_secret\"] }}" | |
| refresh_token: "{{ config[\"client_refresh_token_2\"] }}" | |
| refresh_request_body: {} | |
| token_refresh_endpoint: https://oauth2.googleapis.com/token | |
| streams: | |
| - $ref: "#/definitions/streams/transcripts" | |
| - $ref: "#/definitions/streams/recordings" | |
| spec: | |
| type: Spec | |
| connection_specification: | |
| type: object | |
| $schema: http://json-schema.org/draft-07/schema# | |
| required: | |
| - client_id | |
| - client_secret | |
| - client_refresh_token_2 | |
| properties: | |
| client_id: | |
| type: string | |
| order: 0 | |
| title: Client ID | |
| airbyte_secret: true | |
| client_secret: | |
| type: string | |
| order: 1 | |
| title: Client secret | |
| airbyte_secret: true | |
| conferencerecord: | |
| type: string | |
| order: 3 | |
| title: Conference Record | |
| client_refresh_token_2: | |
| type: string | |
| order: 2 | |
| title: Refresh token | |
| airbyte_secret: true | |
| additionalProperties: true | |
| metadata: | |
| assist: | |
| docsUrl: https://developers.google.com/calendar/api/v3/reference | |
| testedStreams: | |
| recordings: | |
| hasRecords: false | |
| streamHash: 79a735cad388f0dc015bf233b0cdde61b71765b6 | |
| hasResponse: true | |
| primaryKeysAreUnique: true | |
| primaryKeysArePresent: true | |
| responsesAreSuccessful: true | |
| transcripts: | |
| hasRecords: false | |
| streamHash: 123a3af9c7dd1e8b527d4eb04f1760f763f74ce2 | |
| hasResponse: true | |
| primaryKeysAreUnique: true | |
| primaryKeysArePresent: true | |
| responsesAreSuccessful: false | |
| autoImportSchema: | |
| recordings: true | |
| transcripts: true | |
| schemas: | |
| recordings: | |
| type: object | |
| $schema: http://json-schema.org/draft-07/schema# | |
| properties: {} | |
| additionalProperties: true | |
| transcripts: | |
| type: object | |
| $schema: http://json-schema.org/schema# | |
| required: | |
| - id | |
| properties: | |
| id: | |
| type: string | |
| end: | |
| type: | |
| - object | |
| - "null" | |
| properties: | |
| dateTime: | |
| type: | |
| - string | |
| - "null" | |
| timeZone: | |
| type: | |
| - string | |
| - "null" | |
| etag: | |
| type: | |
| - string | |
| - "null" | |
| kind: | |
| type: | |
| - string | |
| - "null" | |
| start: | |
| type: | |
| - object | |
| - "null" | |
| properties: | |
| dateTime: | |
| type: | |
| - string | |
| - "null" | |
| timeZone: | |
| type: | |
| - string | |
| - "null" | |
| status: | |
| type: | |
| - string | |
| - "null" | |
| created: | |
| type: | |
| - string | |
| - "null" | |
| creator: | |
| type: | |
| - object | |
| - "null" | |
| properties: | |
| self: | |
| type: | |
| - boolean | |
| - "null" | |
| email: | |
| type: | |
| - string | |
| - "null" | |
| iCalUID: | |
| type: | |
| - string | |
| - "null" | |
| summary: | |
| type: | |
| - string | |
| - "null" | |
| updated: | |
| type: | |
| - string | |
| - "null" | |
| htmlLink: | |
| type: | |
| - string | |
| - "null" | |
| sequence: | |
| type: | |
| - number | |
| - "null" | |
| attendees: | |
| type: | |
| - array | |
| - "null" | |
| items: | |
| type: | |
| - object | |
| - "null" | |
| properties: | |
| self: | |
| type: | |
| - boolean | |
| - "null" | |
| email: | |
| type: | |
| - string | |
| - "null" | |
| organizer: | |
| type: | |
| - boolean | |
| - "null" | |
| responseStatus: | |
| type: | |
| - string | |
| - "null" | |
| eventType: | |
| type: | |
| - string | |
| - "null" | |
| organizer: | |
| type: | |
| - object | |
| - "null" | |
| properties: | |
| self: | |
| type: | |
| - boolean | |
| - "null" | |
| email: | |
| type: | |
| - string | |
| - "null" | |
| reminders: | |
| type: | |
| - object | |
| - "null" | |
| properties: | |
| overrides: | |
| type: | |
| - array | |
| - "null" | |
| items: | |
| type: | |
| - object | |
| - "null" | |
| properties: | |
| method: | |
| type: | |
| - string | |
| - "null" | |
| minutes: | |
| type: | |
| - number | |
| - "null" | |
| useDefault: | |
| type: | |
| - boolean | |
| - "null" | |
| hangoutLink: | |
| type: | |
| - string | |
| - "null" | |
| conferenceData: | |
| type: | |
| - object | |
| - "null" | |
| properties: | |
| entryPoints: | |
| type: | |
| - array | |
| - "null" | |
| items: | |
| type: | |
| - object | |
| - "null" | |
| properties: | |
| uri: | |
| type: | |
| - string | |
| - "null" | |
| label: | |
| type: | |
| - string | |
| - "null" | |
| entryPointType: | |
| type: | |
| - string | |
| - "null" | |
| conferenceId: | |
| type: | |
| - string | |
| - "null" | |
| conferenceSolution: | |
| type: | |
| - object | |
| - "null" | |
| properties: | |
| key: | |
| type: | |
| - object | |
| - "null" | |
| properties: | |
| type: | |
| type: | |
| - string | |
| - "null" | |
| name: | |
| type: | |
| - string | |
| - "null" | |
| iconUri: | |
| type: | |
| - string | |
| - "null" | |
| guestsCanModify: | |
| type: | |
| - boolean | |
| - "null" | |
| additionalProperties: true |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment