createMeeting

Touchpoint supports two types of meetings: Standard and Competitive. In this Standard meeting, all participants are listed. You have the flexibility to display a custom title for the meeting to each individual user; for example, if you want Participant 1's meeting to be titled "Meeting with Participant 2" and Participant 2's meeting to be titled "Meeting with Participant 1," you have that flexibility in the API.

Arguments

gatheringId: (Int!)
meeting: (MeetingParams)
GraphQL Mutation
mutation {
  createMeeting(gatheringId:232, meeting: {
    name:"BetaGroup Company Presentation" startsAt:"2018-07-22T20:35:09Z" 
    endsAt: "2018-07-28T20:35:09Z"
    surveys: [{externalId:"meeting_survey"}]
  participants: [
    { participantKind: "attendee", participantId: 2771895, roleLabel: "Investor" }
    { participantKind: "attendee", participantId: 208711, customMeetingName: "Meeting with BetaGroup" }
  ]}
  ) {
      name
    description
    startsAt
    endsAt
    externalId
    externalSource
    participants {
      customMeetingName
      participantId
      participantKind
      roleLabel
    }
  }
  }
CURL Request
curl -X POST https://cms.gatherdigital.com/graphql -H 'Content-Type: application/graphql' -H 'Authorization: Bearer 123abcveryLongAuthorizationToken456def' -d '{ mutation { createMeeting(meeting: { name:"BetaGroup Company Presentation" startsAt:"2018-07-22T20:35:09Z" endsAt: "2018-07-28T20:35:09Z" participants: [{ participantKind: "attendee", participantId: 2771895, roleLabel: "Investor" } { participantKind: "attendee", participantId: 208711, customMeetingName: "Meeting with BetaGroup" }]}, gatheringId: 232) { name description startsAt endsAt externalId externalSource participants { customMeetingName participantId participantKind roleLabel } }'
GraphQL Response
{ "data": 
  {"createMeeting": {
      "startsAt": "2018-07-22T20:35:09Z",
      "participants": [
        {
          "roleLabel": null,
          "participantKind": "attendee",
          "participantId": 2771895,
          "customMeetingName": null
        },
        {
          "roleLabel": "Investor",
          "participantKind": "attendee",
          "participantId": 208711,
          "customMeetingName": "Meeting with BetaGroup"
        }
      ],
      "name": "BetaGroup Company Presentation10",
      "externalSource": null,
      "externalId": null,
      "endsAt": "2018-07-28T20:35:09Z",
      "description": ""
    }
  }
}

MeetingParams

When creating a meeting name and startsAt are required.

name (String!) requiredThe name of the meeting as it will appear in the CMS. If a personalized meeting name is not provided on a participant record, they will see this name.
startsAt (Datetime) The start date and time of the meeting in UTC.
endsAt (Datetime) The end date and time of the meeting in UTC.
description (String) The detailed description of the meeting as it will appear to participants. No character limit.
competitiveParticipants (Boolean) A boolean to indicate whether this is a competitive meeting and therefore non-neutral participants should not see each other on the participant list. Creating a competitive or standard meeting in the create action sets this flag.
externalId (String) The unqiue ID of the meeting from it\'s source (i.e., the meeting id in your system). Not displayed.
externalSource (String) External data source of the meeting. If you have created this meeting in the Touchpoint system, Touchpoint will define the external_source. Not displayed.

Creating Relationships

To set participants participants (MeetingParticipantParams) The MeetingParticipantParams are described below.

To set a location location (LocationParams) The LocationParams consists of a name for the location.

To set a survey surveys (SurveyParams) The Survey consists of an externalId for the survey.

MeetingParticipantParams

participantId (Int!) required Certain Touchpoint-assigned id of the meeting participant.
participantKind (String!) The kind of participant, (e.g., attendee, exhibitor, speaker). This must match object names in Touchpoint.
neutralParty (Boolean) Relevant for competitive meetings. A neutral party participant is visible to everyone on the participant list.
customMeetingName (String) You have the flexibility to display a custom title for the meeting to each individual user; for example, if you want Participant 1's meeting to be titled "Meeting with Participant 2" and Participant 2's meeting to be titled "Meeting with Participant 1".
roleLabel (String) This is a cosmetic label to describe a role in the meeting (e.g., moderator, etc.).