TABLE OF CONTENTS

  1. Authentication 
    1.1 Generate Access token & key
    1.2 Authentication

  2. Event Details
    2.1 List Airmeets
    2.2 Fetch Airmeet Registrations
    2.3 Fetch Airmeet Participants
    2.4 Fetch Airmeet Sessions
    2.5 Fetch Custom Registration Fields
    2.6 Fetch Event Attendance
    2.7 Fetch Session Attendance
    2.8 Fetch Airmeet Booths
    2.9 Fetch Booth Attendance
    2.10 Fetch Poll Responses
    2.11 Fetch Questions Asked


  3. Manage Registrations
    3.1 Register a User [deprecated]
    3.2 Add Authorized Attendee
    3.3 Add Authorized Attendee with Custom Registration Fields
    3.4 Remove Authorised Attendee

  4. Manage Event
    4.1 Create Airmeet
    4.2 Add Speaker
    4.3 Create Session
    4.4 Start Airmeet


 

API endpoint: https://api.airmeet.com/

Community dashboard: https://www.airmeet.com/ (use this to get a key pair issued).

 

1. Authentication 

1.1 Generate Access token & key

Step 1: Sign in to your airmeet account ( https://www.airmeet.com/signup )

Step 2: Click on the "Settings" tab and select the "API Access Key" section.

Step 3: Click on "Generate access key" and provide a name/label to your key (can be anything that can be remembered later)

 

 

Step 4: After providing your label name 'X-Airmeet-Access-Key' with 'X-Airmeet-Secret-Key' would be generated, which can be used in API integration

 

Access Key = X-Airmeet-Access-Key

Secret Key = X-Airmeet-Secret-Key

 

 

All APIs expect a Content-Type: application/JSON header.

 


 

1.2 Authentication

 

POST /api/v1/auth

This API issues a token for use with the other APIs mentioned in this doc.

Tokens issued by this API are valid for 30 days and can be cached on the consumer service.

 

 

Headers

 

X-Airmeet-Access-Key and X-Airmeet-Secret-Key (can be obtained over from the integrations tab in the community dashboard)

 

 

Response

 

200 OK {"success": true, "data": {"label": "test", "token":

<your_access_token>}}

400 Bad Request - in case the request is missing a header or the supplied values are incorrect

403 Forbidden - in case the keys are revoked (abuse prevention)

500 Internal Server Error - generic server error

 


 

2. Event Details

2.1 List Airmeets

 

GET /api/v1/airmeets?before=<cursor>&after=<cursor>&size=<number>

 

This API lists the Airmeets accessible to a token.

 

The before and after cursors cannot both be used at the same time. If they are both specified, the API ignores them before the cursor.

 

If not specified, the size is set to 50 Airmeets. Max can be 500.

 

Airmeets are sorted by their creation time.

 

 

Headers

X-Airmeet-Access-Token: airmeet_access_token

 

Response:

200 OK

 

{

    "data" : [

        {

            "uid" : <airmeet_uuid>,

            "name" : "Test Airmeet" ,

            "status" : "ONGOING" ,

            "timezone" : "Asia/Kolkata" ,

            "startTime" : <ISO_Date_String>,

            "endTime" : <ISO_Date_String>

        }

    ],

    "cursors" : {

                        "before" : <integer>,

                        "after" : <integer>,

                       "pageCount" : 3

   }

}

 

 400 Bad Request - in case the supplied token is incorrect

412 Precondition Failed - in case the passed access token has expired

500 Internal Server Error - generic server error

 

 


2.2 Fetch Airmeet registrations

 

GET /api/v1/airmeet/{airmeet_id}/registrations?after=<cursor>&before=

<cursor>&size=<number>

By default, the size is set to 50 registrants. Max can be 500.

Registrations are sorted by their creation time.

 

Headers:

X-Airmeet-Access-Token: airmeet_access_token

Response:

200 OK

 

{

   "data": [

       {

           "email": "user_email@example.com",

           "name": "John Doe",

           "city": "City",

           "country": "World",

           "organisation": "Company",

           "Designation": "Role",

           "registrationDate": <ISO_Date_String>

       }

   ],

   "cursors": {

       "before": <integer>,

       "after": <integer>,

       "pageCount": 3

   }

}

 

400 Bad Request - in case the passed token is bad

401 Unauthorized - in case the token does not belong to this Airmeet's community

404 Not Found - in case the supplied airmeet_id param is invalid

412 Precondition Failed - in case the passed access token has expired

500 Internal Server Error - generic server error


 

2.3 Fetch Airmeet participants

GET /api/v1/airmeet/{airmeetId}/participants?resultSize=<number>&pageNumber=<number>&sortingKey=<column header>&sortingDirection=<direction enum>

 

  • This API gives a list of all participants for an event including invitees, guests and registered users

  • By default, the resultSize is set to 50 registrants. Eg. Set parameter pageNumber=2 for response number 51-100, and so on.

  • Registrations are sorted in descending order of their creation time

  • sortingKey can be [‘name’, ‘email’, ‘registrationDate’] 

  • sortingDirection can be [‘ASC’, ‘DESC’]

 

Headers:

X-Airmeet-Access-Token: airmeet_access_token

Response:

200 OK

 

{

    "paticipants": [

        {

            "email": "user_email@example.com",

            "name": "John Doe",

            "city": "City",

            "country": "World",

            "organisation": "Company",

            "Designation": "Role",

            "registrationDate": <ISO_Date_String>

            "profile_url": null,

            "user_type": "Registered User",

            "token": "<direct access link url>",

            "invite_sent": true,

            "user_profile": [

                {

                    "value": "Custom registration field",

                    "fieldId": "e9bbf124-6f54-44aa-8683-09dc34fd246a"

                }

            ]

        },..

    ],

    "userCount": 50,

    "totalUserCount": 125

}

 

 

400 Bad Request - in case the passed token is bad

401 Unauthorized - in case the token does not belong to this Airmeet's community

404 Not Found - in case the supplied airmeet_id param is invalid

412 Precondition Failed - in case the passed access token has expired

500 Internal Server Error - generic server error





2.4 Fetch Airmeet Sessions


GET /api/v1/airmeet/{airmeetId}/info

 

Headers:

X-Airmeet-Access-Token: airmeet_access_token

Response:

200 OK

 

{

    "sessions": [

        {

            "sessionid": "0219006f-7cfa-44ba-b47f-14d93a40fc99",

            "name": "Welcome Session",

            "start_time": "2021-10-14T07:30:00.000Z",

            "status": "CREATED",

            "duration": 30,

            "summary": "Session Summary",

            "host_id": [

                "bZxdWONJy"

            ],

            "cohost_ids": [],

            "speaker_id": [],

            "speakerList": [],

            "type": "HOSTING",

        },...

    ]

}

 

400 Bad Request - in case the passed token is bad

401 Unauthorized - in case the token does not belong to this Airmeet's community

404 Not Found - in case the supplied airmeet_id param is invalid

412 Precondition Failed - in case the passed access token has expired

500 Internal Server Error - generic server error




2.5 Fetch Airmeet Custom Registration Fields

GET /api/v1/airmeet/{airmeetId}/custom-fields

 

Headers:

X-Airmeet-Access-Token: airmeet_access_token

Response:

200 OK

 

{

    "customFields": [

        {

            "label": "Short Text Field",

            "name": "shortText",

            "fieldId": "5a0d3578-6851-4d49-bcb9-96d7466b64bb",

            "options": [],

            "isRequired": false,

            "type": {

                "fieldType": "custom",

                "inputType": "text",

                "mappedFrom": "shortText"

            }

        },

        {

            "label": "Single Select Field",

            "name": "singleSelect",

            "fieldId": "cc68e0a7-0f59-458a-84af-2ac2784fae01",

            "options": [

                {

                    "code": "Option1",

                    "displayValue": "Option1"

                },

                {

                    "code": "Option2",

                    "displayValue": "Option2"

                },

                {

                    "code": "Option3",

                    "displayValue": "Option3"

                }

            ],

            "isRequired": false,

            "type": {

                "fieldType": "custom",

                "inputType": "radio",

                "mappedFrom": "singleSelect"

            }

        },

        {

            "label": "Multi Select Field",

            "name": "multiSelect",

            "fieldId": "b7604a72-6a45-4757-ba71-25ab9f3841ee",

            "options": [

                {

                    "code": "Option1",

                    "displayValue": "Option1"

                },

                {

                    "code": "Option2",

                    "displayValue": "Option2"

                },

                {

                    "code": "Option3",

                    "displayValue": "Option3"

                }

            ],

            "isRequired": false,

            "type": {

                "fieldType": "custom",

                "inputType": "checkbox",

                "mappedFrom": "multiSelect"

            }

        }

    ]

}

 

 

 

400 Bad Request - in case the passed token is bad

401 Unauthorized - in case the token does not belong to this Airmeet's community

404 Not Found - in case the supplied airmeet_id param is invalid

412 Precondition Failed - in case the passed access token has expired

500 Internal Server Error - generic server error



2.6 Fetch event attendance

GET https://analytics.airmeet.com/api/v1/airmeet/{airmeetId}/attendees?after=<cursor>&before=<cursor>&size=<number>

 

  • This API gives a list of all event attendees

  • By default, the response page size is set to 50. Max can be 500.

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


Headers:

X-Airmeet-Access-Token: airmeet_access_token

Response:

202 Accepted

{

   "statusCode": 202,

   "statusMessage": "Preparing your results.Try after 5 minutes to get the updated results"

}

Response:

200 OK

{

   "cursors": {

       "after": 4024760,

       "before": 4024760,

       "pageCount": 1,

       "totalCount": 1

   },

   "data": [

       {

           "email": "user_email@example.com",

           "id": 4024760,

           "name": "John Doe",

           "user_id": "9jWs2N5Ex"

       }

   ],

   "statusCode": 200,

   "statusMessage": "SUCCESS"

}

 

 

 

400 Bad Request - in case the passed token is bad

400 Bad Request - in case the token does not belong to this Airmeet's community

400 Bad Request - in case the supplied airmeet_id param is invalid

412 Precondition Failed - in case the passed access token has expired

500 Internal Server Error - generic server error

 

 


2.7 Fetch session attendance

GET https://analytics.airmeet.com/api/v1/session/{sessionId}/attendees?after=<cursor>&before=<cursor>&size=<number>

 

  • This API gives a list of all session attendees

  • By default, the response page size is set to 50. Max can be 500.

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


Headers:

X-Airmeet-Access-Token: airmeet_access_token

Response:

202 Accepted

{

   "statusCode": 202,

   "statusMessage": "Preparing your results. Try after 5 minutes to get the updated results"

}

Response:

200 OK

{

   "cursors": {

       "after": 4024760,

       "before": 4024760,

       "pageCount": 1,

       "totalCount": 1

   },

   "data": [

       {

           "email": "user_email@example.com",

           "id": 4024760,

           "name": "John Doe",

           "user_id": "9jWs2N5Ex"

       }

   ],

   "statusCode": 200,

   "statusMessage": "SUCCESS"

}

 

 

 

400 Bad Request - in case the passed token is bad

400 Bad Request - in case the token does not belong to this Airmeet's community

400 Bad Request - in case the supplied sessionId param is invalid

412 Precondition Failed - in case the passed access token has expired

500 Internal Server Error - generic server error



2.8 Fetch Airmeet Booths


GET https://bff.airmeet.com/api/v1/airmeet/{airmeetId}/booth/public 

 

  • This API gives a list of all booths in your Airmeet

 

Headers:

X-Airmeet-Access-Token: airmeet_access_token

 

Response:

200 OK

{

    "booths": [

        {

            "uid": "{boothId}",

            "name": "booth name",

            "exhibitors": [

                "booth.exhibitor.1@example.com",

                "booth.exhibitor.2@example.com"

            ],

            "tags": [

                "Tag 1",

                "Tag 2"

            ],

            "airmeet_id": "{airmeetId}",

            "logo_url": "https://image_url",

            "video": null,

            "faqs": null,

            "order": 1,

            "resources": null,

            "layoutType": null,

            "layoutData": "null",

            "boothExhibitor": true,

            "social_media_links": null,

            "short_description": null,

            "long_description": null,

            "banner_url": null,

            "register_interest_details": null,

            "offer_details": null,

            "doc_url": null,

            "doc_name": null,

            "booth_space_id": null

        }

    ]

}


400 Bad Request - in case the passed token is bad

400 Bad Request - in case the token does not belong to this Airmeet's community

400 Bad Request - in case the supplied sessionId param is invalid

412 Precondition Failed - in case the passed access token has expired

500 Internal Server Error - generic server error

 


2.9 Fetch Booth Attendance


GET https://analytics.airmeet.com/api/v1/airmeet/{airmeetId}/booth/{boothId}/booth-attendance?after=<cursor>&before=<cursor>&size=<number>

 

  • This API gives a list of all booth attendees

  • By default, the response page size is set to 50. Max can be 500.

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


Headers:

X-Airmeet-Access-Token: airmeet_access_token

Response:

202 Accepted

{

   "statusCode": 202,

   "statusMessage": "Preparing your results. Try after 5 minutes to get the updated results"

}

Response:

200 OK

{

   "cursors": {

       "after": 4024760,

       "before": 4024760,

       "pageCount": 1,

       "totalCount": 1

   },

   "data": [

       {

           "email": "user_email@example.com",

           "id": 4024760,

           "name": "John Doe",

           "interested_in_being_contacted": true,

           "user_id": "9jWs2N5Ex",

           "visits": 1

       }

   ],

   "statusCode": 200,

   "statusMessage": "SUCCESS"

}

 

 

 

400 Bad Request - in case the passed token is bad

400 Bad Request - in case the token does not belong to this Airmeet's community

400 Bad Request - in case the supplied airmeet_id param is invalid

412 Precondition Failed - in case the passed access token has expired

500 Internal Server Error - generic server error

 


2.10 Fetch Poll Responses


GET https://analytics.airmeet.com/api/v1/airmeet/{airmeetId}/polls?after=<cursor>&before=<cursor>&size=<number>

 

  • This API gives a list of all poll responses

  • By default, the response page size is set to 50. Max can be 500.

 

Headers:

X-Airmeet-Access-Token: airmeet_access_token

Response:

200 OK

{

   "cursors": {

       "after": 4024760,

       "before": 4024760,

       "pageCount": 1,

       "totalCount": 1

   },

   "data": [

        {

            "email": "user_email@example.com",

            "name": "John Doe",

            "user_id": "9jWs2N5Ex",

            "polls": [

                {

                    "question": "Poll Question 1",

                    "answer": "Poll Answer 1"

                },

                {

                    "question": "Poll Question 2",

                    "session_id": "Poll Answer 2"

                }

            ]

        },

   ],

 

   "statusCode": 200,

   "statusMessage": "SUCCESS"

}


400 Bad Request - in case the passed token is bad

400 Bad Request - in case the token does not belong to this Airmeet's community

400 Bad Request - in case the supplied airmeet_id param is invalid

412 Precondition Failed - in case the passed access token has expired

500 Internal Server Error - generic server error

 


2.11 Fetch Questions Asked


GET https://analytics.airmeet.com/api/v1/airmeet/{airmeetId}/questions

 

  • This API gives all the questions asked in an Airmeet

 

Headers:

X-Airmeet-Access-Token: airmeet_access_token

Response:

200 OK

{

   "data": [

        {

            "email": "user_email@example.com",

            "name": "John Doe",

            "user_id": "9jWs2N5Ex",

            "questions": [

                {

                    "question": "Question 1",

                    "session_id": "{sessionId 1}",

                    "upvoteCount": 1.0

                },

                {

                    "question": "Question 2",

                    "session_id": "{sessionId 2}",

                    "upvoteCount": 2.0

                }

            ]

        },

   ],

   "statusCode": 200,

   "statusMessage": "SUCCESS"

}

 

400 Bad Request - in case the passed token is bad

400 Bad Request - in case the token does not belong to this Airmeet's community

400 Bad Request - in case the supplied airmeet_id param is invalid

412 Precondition Failed - in case the passed access token has expired

500 Internal Server Error - generic server error


3. Manage Registrations

3.1 Register a User [deprecated]

 

POST /api/v1/airmeet/{airmeet_id}/user

 

Adds a user to the Airmeet specified. If the user is not present on the Airmeet platform,  we will create a user account with the details provided. The user can modify these details at the time of entry to the Airmeet.

 

The users added by this API are present in the registration list.

 

Headers:

X-Airmeet-Access-Token: airmeet_access_token

 

Request Payload:

{

"email": "user_email@example.com",

"name": "John Doe",

"city": "abc",

"country": "xyz",

"designation": "qwerty",

"organisation": "Airmeet"

}

 

 

Only email and name are mandatory fields.

 

Response:

200 OK - {"email": "user_email@example.com"}

400 Bad Request - in case the passed token is bad

401 Unauthorized - in case the passed token does not have permission for the passed

airmeet_id

404 Not Found - in case the supplied airmeet_id param is invalid

412 Precondition Failed - the passed access token has expired

500 Internal Server Error - generic server error




3.2 Add Authorized Attendee


POST /api/v1/airmeet/{airmeet_id}/attendee

 

Adds an attendee allowed to enter the Airmeet specified. The user can modify these details at the time of entry to the Airmeet.

 

The user will be visible in the session with the details provided in this API, but they are free to use different details in their individual user profiles.

 

Headers:

X-Airmeet-Access-Token: airmeet_access_token

Request Payload:

 

{

"email": "user_email@example.com",

"name": "John Doe",

"city": "abc",

"country": "xyz",

"designation": "qwerty",

"organization": "Airmeet"

}

 

Only email and name are mandatory fields.

Replaying this request does not change any details for the user. It only authorizes the user again, in case their access was revoked.

 

Response:

 

200 OK - {"email": "user_email@example.com", "entryLink":

"https://www.airmeet.com/e/<airmeet_id>?code=<unique_entry_code>"}

400 Bad Request - in case the passed token is bad

401 Unauthorized - in case the passed token does not have permission for the passed

airmeet_id

404 Not Found - in case the supplied airmeet_id param is invalid

412 Precondition Failed - the passed access token has expired

500 Internal Server Error - generic server error

 





3.3 Add Authorized Attendee with Custom Registration Fields

POST /api/v1/airmeet/{airmeet_id}/attendee

 

Adds an attendee allowed to enter the Airmeet specified with custom registration fields. The user can modify these details at the time of entry to the Airmeet.

 

The user will be visible in the session with the details provided in this API.

 

Headers:

X-Airmeet-Access-Token: airmeet_access_token

Request Payload:

 

{

"email": "user_email@example.com",

"name": "John Doe",

"city": "abc",

"country": "xyz",

"designation": "qwerty",

"organization": "Airmeet"

"customFieldMapping": [

      {

        "fieldId": "d68ebeb2-bf18-4c96-837b-8872604ae653",

        "value": "Longfield data"

      },

      {

        "fieldId": "dbdf99b1a-ee3b-4dd3-9d97-d54df19f0ba6",

        "value": "option02"

      },

      {

        "fieldId": "af2c99c3-ba9a-4d17-a150-d06a1ae5b736",

        "value": ["Medium","sad","Happy"]

    }]

}

 

Only email and name are mandatory fields.

“customFieldMapping” takes an array of fields as the value. Use the “Fetch Custom Registration Fields” API to generate the appropriate value.

Replaying this request does not change any details for the user. It only authorizes the user again, in case their access was revoked.

 

Response:

 

200 OK - {"email": "user_email@example.com", "entryLink":

"https://www.airmeet.com/e/<airmeet_id>?code=<unique_entry_code>"}

400 Bad Request - in case the passed token is bad

401 Unauthorized - in case the passed token does not have permission for the passed

airmeet_id

404 Not Found - in case the supplied airmeet_id param is invalid

412 Precondition Failed - the passed access token has expired

500 Internal Server Error - generic server error





3.4 Remove Authorised Attendee


DELETE /api/v1/airmeet/{airmeet_id}/attendee/<url_encoded_attendee_email>

Revokes access to a particular airmeet for the specified email.

 

Headers:

X-Airmeet-Access-Token: airmeet_access_token

 

Response:

204 Success - the email access is successfully revoked

400 Bad Request - in case the passed token is bad

401 Unauthorized - in case the passed token does not have permission for the passed

airmeet_id

404 Not Found - in case the supplied airmeet_id param is invalid or no such email is

authorized for the Airmeet

412 Precondition Failed - the passed access token has expired

500 Internal Server Error - generic server error

 

Error response shape

 

{

   "success": false,

   "code": "BAD_REQUEST",

   "errors": [

       "Supplied token is bad"

   ]

}

 

 

Timeouts

The 60s, decided by the reverse proxy.



4. Manage Event

4.1 Create Airmeet


Create an Airmeet in your community

Automatically create a new Airmeet for a monthly review meeting for your employees or a new batch of students.

Endpoint:

POST /api/v1/public/airmeet

Headers:

X-Airmeet-Access-Token: airmeet_access_token

Request Payload:

{

"hostEmail": "host_email@example.com",

"eventName": "Event Name",

"shortDesc": "Short description for the event",

"eventImage": "event image url",

"longDesc": "Long description for the event",

"access": "INVITED_ONLY",

"eventType": "MEETUP",

"timing": {

   "startTime": 1622528299000,

   "endTime": 1622528299000,

   "timezone": "Asia/Kolkata"

},

"config": {

   "networking": true,

   "tableCount": 0

 }

}

 

  • Only hostEmail, eventName, shortDesc, timing - startTime, endTime, and timezone are mandatory fields

  • Only Meetup Airmeets are currently supported ( eventType: "MEETUP" )

  • Access Type can be “INVITED_ONLY” or “WITH_VERIFIED_EMAIL” or “WITHOUT_VERIFIED_EMAIL.” Default is “INVITED_ONLY”

    • “INVITED_ONLY” - only those who have been invited will be able to join the event

    • “WITH_VERIFIED_EMAIL” - only those users who have a verified email will be able to join the event

    • “WITHOUT_VERIFIED_EMAIL” - anyone with the event link will be able to join the event

  • Start and End time should be unix timestamp

  • timezone is a Canonical tz name, e.g., "Asia/Kolkata" see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones for the full list 

Field

Description

Model

Required

hostEmail

Email of the host

string

Yes

eventName

Name of the event

string

minLength: 3

maxLength: 80

Yes

shortDesc

Short description of the event

string

minLength: 1

Yes

eventImage

Url of the event image

string

No

longDesc

Short description of the event

string

No

access

Access type for the event

string enum

[ “INVITED_ONLY”, “WITH_VERIFIED_EMAIL”, “WITHOUT_VERIFIED_EMAIL” ]

No, default is “INVITED_ONLY”

eventType

Airmeet event type

string enum:

[ “MEETUP” ]

No, default is “MEETUP”

timing


-

Yes

startTime

Start time for the event.

Note: Needs to be in milliseconds

number

unix timestamp

Yes

endTime

The end time for the event.

Note: Needs to be in milliseconds 

number

unix timestamp

Yes

timezone

Timezone for the event

string

minLength: 1

Canonical tz name

Yes

config


-

No

networking

Enable social lounge for the event

boolean, [true, false]

No, default is true

tableCount

Number of tables in the social lounge

number

No, default is 12

 

 

Response:

200 OK - {"uuid":"a23f56d0-ba1d-11eb-86c0-exampleuuid", "airmeet status" : "CREATED"}

400 Bad Request - in case the passed token is bad

401 Unauthorized - in case the passed token does not have permission for the passed community_id

404 Not Found - in case the supplied community_id param is invalid

412 Precondition Failed - the passed access token has expired

500 Internal Server Error - generic server error


4.2 Add Speaker


Add a speaker to your Airmeet event

Call this API multiple times for adding speakers in bulk

Endpoint:

POST api/v1/public/airmeet/{airmeet_id}/speaker

Headers:

X-Airmeet-Access-Token: airmeet_access_token

Request Payload:

{

 "name": "Speaker’s name",

 "email": "speaker.email@example.com",

 "organisation": "",

 "designation": "",

 "imageUrl": "",

 "bio": "",

 "city": "",

 "country": ""

}

 

  • Only name and email are mandatory fields

  • All fields are strings

Response:

200 OK - {"email":"string","status":"ADDED_TO_EVENT"}

400 Bad Request - in case the speaker with the same name or email already exists for the specified Airmeet.

404 Not Found - in case the supplied airmeet_id param is invalid

500 Internal Server Error - generic server error


4.3 Create Session


Add a session to your Airmeet event

Call this API multiple times for creating sessions in bulk

 

Endpoint:

POST api/v1/public/airmeet/{airmeet_id}/session

Headers:

X-Airmeet-Access-Token: airmeet_access_token

Request Payload:

{

"sessionTitle": "Title for the session",

"sessionStartTime": 1628149140000,

"sessionDuration": 1800,

"sessionSummary": "string",

"hostEmail": "host.email@example.com",

"speakerEmails": [ "speaker1.email@example.com",

"speaker2.email@example.com" ],

"cohostEmails": [ "team.member@example.com" ],

“type”:”HOSTING”

}

 

 

Field

Description

Model

Required

sessionTitle

Title for the session

string

Yes

sessionStartTime

Start time for the session

Note: Needs to be in milliseconds

number

Unix timestamp rounded to minutes

Yes

session Duration

Duration of the event in seconds

number

No, the default is 1800 seconds (30 minutes)

sessionSummary

Summary for the session

string

No

hostEmail

Email of the Airmeet event host

Note:  hostEmail should be a Community Manager or a Team Member for your community

string

Yes

speakerEmails

Emails of all the speakers

string array

No

cohostEmails

Emails of all the co hosts

string array

No

type

Type of session

string enum

[“HOSTING”]

No, default is “HOSTING”

 

  • Only sessionTitle, sessionStartTime, and hostEmail are mandatory fields

  • Speakers should be added to the Airmeet before creating the session

  • Team members should be added to the community before creating the session

  • If you want a speaker to get the same privilege as a co-host, you can add their email in both the speaker and cohost fields

  • Session type should be HOSTING only


Response:

200 OK - {"uuid":"64975ddc-c09e-47cd-b89e-832c6b7dc7e1", "token": [ { "email": "speaker1.email@example.com", "token": "https://www.airmeet.com/event/session?t=<unique-code>" }, { "email": "speaker2.email@example.com", "token": "https://www.airmeet.com/event/session?t=<unique-code>"} ] }

400 Bad Request - in case there is already an overlapping session(same time)

404 Not Found - in case the supplied airmeet_id param is invalid

412 Precondition Failed - the passed access token has expired

500 Internal Server Error - generic server error


4.4 Start Airmeet

Use this API to start and end your Airmeet once it is created, without requiring a visit to the community dashboard

Endpoint:

POST /api/v1/public/airmeet/{airmeet_id}/status

Headers:

X-Airmeet-Access-Token: airmeet_access_token

Request Payload:

{  "status": "ONGOING" } to start an Airmeet

{  "status": "FINISHED" } to end an Airmeet

 

 

Response:

200 OK - { "statusUpdated": true }

400 Bad Request - in case the status does not exist

404 Not Found - in case the supplied airmeet_id param is invalid

500 Internal Server Error - generic server error


 

Need more help? Contact support@airmeet.com or visit our 24*7 Support Lounge.