Airmeet

Overview

Airmeet is a webinar platform. This connector supports fetching events (“Airmeets”), sessions, participants, and other event data via the Airmeet Public API for Event Details.

Note

Authentication

You must create an Access Key and Secret Key via the Airmeet website. These are used by the Airmeet class to fetch an access token which is used for subsequent interactions with the API. There are three region-based API endpoints; see the Airmeet API documentation for details.

Quick Start

To instantiate the Airmeet class, you can either store your API endpoint, access key, and secret key as environmental variables (AIRMEET_URI, AIRMEET_ACCESS_KEY, AIRMEET_SECRET_KEY) or pass them in as arguments.

from parsons import Airmeet

# First approach: Use API credentials via environmental variables
airmeet = Airmeet()

# Second approach: Pass API credentials as arguments (airmeet_uri is optional)
airmeet = Airmeet(
  airmeet_uri='https://api-gateway.airmeet.com/prod',
  airmeet_access_key="my_access_key",
  airmeet_secret_key="my_secret_key
)

You can then call various endpoints:

# Fetch the list of Airmeets.
events_tbl = airmeet.list_airmeets()

# Fetch the list of sessions in an Airmeet.
sessions_tbl = airmeet.fetch_airmeet_sessions("my_airmeet_id")

# Fetch the list of registrations for an Airmeet, sorted in order
# of registration date.
participants_tbl = airmeet.fetch_airmeet_participants(
  "my_airmeet_id", sorting_direction="ASC"
)

# Fetch the list of session attendees.
session_attendees_tbl = airmeet.fetch_session_attendance("my_session_id")

API

class parsons.Airmeet(airmeet_uri=None, airmeet_access_key=None, airmeet_secret_key=None)[source]

Instantiate class.

Args:
airmeet_uri: string

The URI of the Airmeet API endpoint. Not required. The default is https://api-gateway.airmeet.com/prod/. You can set an AIRMEET_URI env variable or use this parameter when instantiating the class.

airmeet_access_key: string

The Airmeet API access key.

airmeet_secret_key: string

The Airmeet API secret key.

For instructions on how to generate an access key and secret key set, see Airmeet’s Event Details API documentation.

list_airmeets() Table[source]

Get the list of Airmeets. The API excludes any Airmeets that are Archived (Deleted).

Returns:
Parsons.Table

List of Airmeets

fetch_airmeet_participants(airmeet_id, sorting_key='registrationDate', sorting_direction='DESC') Table[source]

Get all participants (registrations) for a specific Airmeet, handling pagination based on the returned totalUserCount. This API doesn’t use cursors for paging, so we can’t use _get_all_pages() here.

Args:
airmeet_id: string

The id of the Airmeet.

sorting_key: string

The key to sort the participants by. Can be ‘name’, ‘email’, or ‘registrationDate’ (the default).

sorting_direction: string

Can be either ‘ASC’ or ‘DESC’ (the default).

Returns:
Parsons.Table

List of participants for the Airmeet event

fetch_airmeet_sessions(airmeet_id) Table[source]

Get the list of sessions for an Airmeet.

Args:
airmeet_id: string

The id of the Airmeet.

Returns:
Parsons.Table

List of sessions for this Airmeet event

fetch_airmeet_info(airmeet_id, lists_to_tables=False)[source]

Get the data for an Airmeet (event), which include the list of sessions, session hosts/cohosts, and various other info.

Args:
airmeet_id: string

The id of the Airmeet.

lists_to_tables: bool

If True, will convert any dictionary values that are lists to Tables.

Returns:

Dict containing the Airmeet data

fetch_airmeet_custom_registration_fields(airmeet_id) Table[source]

Get the list of custom registration fields for an Airmeet.

Args:
airmeet_id: string

The id of the Airmeet.

Returns:
Parsons.Table

List of custom registration fields for this Airmeet event

fetch_event_attendance(airmeet_id) Table[source]

Get all attendees for an Airmeet, handling pagination based on the returned pageCount.

Results include attendance only from sessions with a status of FINISHED. Maximum number of results per page = 50.

“This is an Asynchronous API. If you get a 202 code in response, please try again after 5 minutes.”

Args:
airmeet_id: string

The id of the Airmeet.

Returns:
Parsons.Table

List of attendees for this Airmeet event

fetch_session_attendance(session_id) Table[source]

Get all attendees for a specific Airmeet session, handling pagination based on the returned pageCount.

Results are available only for sessions with a status of FINISHED. Maximum number of results per page = 50.

“This is an Asynchronous API. If you get a 202 code in response, please try again after 5 minutes.”

Args:
session_id: string

The id of the session.

Returns:
Parsons.Table

List of attendees for this session

fetch_airmeet_booths(airmeet_id) Table[source]

Get the list of booths for a specific Airmeet by ID.

CAUTION: This method is untested. Booths are available only in certain Airmeet plans.

Args:
airmeet_id: string

The id of the Airmeet.

Returns:
Parsons.Table

List of booths for this Airmeet

fetch_booth_attendance(airmeet_id, booth_id) Table[source]

Get all attendees for a specific Airmeet booth, handling pagination based on the returned pageCount.

Results are available only for events with a status of FINISHED. Maximum number of results per page = 50.

“This is an Asynchronous API. If you get a 202 code in response, please try again after 5 minutes.”

CAUTION: This method is untested. Booths are available only in certain Airmeet plans.

Args:
airmeet_id: string

The id of the Airmeet.

booth_id: string

The id of the booth.

Returns:
Parsons.Table

List of attendees for this booth

fetch_poll_responses(airmeet_id) Table[source]

Get a list of the poll responses in an Airmeet, handling pagination based on the returned pageCount.

Maximum number of results per page = 50.

Args:
airmeet_id: string

The id of the Airmeet.

Returns:
Parsons.Table

List of users. For each user, the value for the “polls” key is a list of poll questions and answers for that user.

fetch_questions_asked(airmeet_id) Table[source]

Get a list of the questions asked in an Airmeet.

Args:
airmeet_id: string

The id of the Airmeet.

Returns:
Parsons.Table

List of users. For each user, the value for the “questions” key is a list of that user’s questions.

fetch_event_tracks(airmeet_id) Table[source]

Get a list of the tracks in a specific Airmeet by ID.

CAUTION: This method is untested. Event tracks are available only in certain Airmeet plans.

Args:
airmeet_id: string

The id of the Airmeet.

Returns:
Parsons.Table

List of event tracks

fetch_registration_utms(airmeet_id) Table[source]

Get all the UTM parameters captured during registration, handling pagination based on the returned pageCount.

Maximum number of results per page = ?? (documentation doesn’t say, but assume 50 like the other asynchronous APIs).

“This is an Asynchronous API. If you get a 202 code in response, please try again after 5 minutes.”

Args:
airmeet_id: string

The id of the Airmeet.

Returns:
Parsons.Table

List of UTM parameters captured during registration

download_session_recordings(airmeet_id, session_id=None) Table[source]

Get a list of recordings for a specific Airmeet (and optionally a specific session in that Airmeet). The data for each recording includes a download link which is valid for 6 hours.

The API returns “recordingsCount” and “totalCount”, which implies that the results could be paged like in fetch_airmeet_participants(). The API docs don’t specify if that’s the case, but this method will need to be updated if it is.

Args:
airmeet_id: string

The id of the Airmeet.

session_id: string

(optional) If provided, limits results to only the recording of the specified session.

Returns:
Parsons.Table

List of session recordings

fetch_event_replay_attendance(airmeet_id, session_id=None) Table[source]

Get all replay attendees for a specific Airmeet (and optionally a specific session in that Airmeet), handling pagination based on the returned pageCount.

Results are available only for events with a status of FINISHED. Maximum number of results per page = 50.

“This is an Asynchronous API. If you get a 202 code in response, please try again after 5 minutes.”

Args:
airmeet_id: string

The id of the Airmeet.

session_id: string

(optional) If provided, limits results to only attendees of the specified session.

Returns:
Parsons.Table

List of event replay attendees