Exhibitors
An Exhibitor is a company participating in an event on Swapcard. Exhibitors can be booth holders, sponsors, partners, startups, etc.
Fields
The required field to create an Exhibitor is the name of Exhibitor.
Recommended fields are logoUrl, websiteUrl and description.
The categories field (table) displays one or several keywords on an exhibitor's profile, and allows users to filter based on these categories.
The type field (unique value) allows to sort by type (eg. Platinum, Gold, Silver). Within a type, exhibitors are listed alphabetically.
Object
Phone numbers format
Get the first hundred exhibitors
filtered by eventId
Arguments
- communityId - This is string value of the Community Id.
eventIds- The Ids of Events that need to be searched as type ofID. This is an array and can hold more than one value separated by commas.
Query
query ExhibitorsV2(
$communityId: ID!
$search: String
$cursor: CursorPaginationInput
$filter: CommunityExhibitorsFilterInput
$sort: EventExhibitorsSortInput
) {
exhibitorsV2(
communityId: $communityId
search: $search
filter: $filter
sort: $sort
cursor: $cursor
) {
pageInfo {
endCursor
hasNextPage
}
totalCount
nodes {
...Exhibitor
}
}
}
fragment Exhibitor on Exhibitor {
id
name
logoUrl
websiteUrl
description
}
Variables
{
"communityId": "Q29tbXVuaXR5XzE=",
"filter": {
"eventIds": ["INSERT_EVENT_IDS_HERE"]
},
"cursor": {
"first": 100
}
}
filtered by clientIds
Arguments
- communityId - This is string value of the Community Id.
clientIds- The Ids of Clients that need to be searched as type ofID. This is an array and can hold more than one value separated by commas.
Query
query ExhibitorsV2(
$communityId: ID!
$search: String
$cursor: CursorPaginationInput
$filter: CommunityExhibitorsFilterInput
$sort: EventExhibitorsSortInput
) {
exhibitorsV2(
communityId: $communityId
search: $search
filter: $filter
sort: $sort
cursor: $cursor
) {
pageInfo {
endCursor
hasNextPage
}
totalCount
nodes {
...Exhibitor
}
}
}
fragment Exhibitor on Exhibitor {
id
name
logoUrl
websiteUrl
description
}
Variables
{
"communityId": "Q29tbXVuaXR5XzE=",
"filter": {
"clientIds": ["INSERT_CLIENT_IDS_HERE"]
},
"cursor": {
"first": 100
}
}
filtered by communityGroupIds
Arguments
- communityId - This is string value of the Community Id.
communityGroupIds- The Ids of CommunityGroups that need to be searched as type ofInt. This is an array and can hold more than one value separated by commas.
Query
query ExhibitorsV2(
$communityId: ID!
$search: String
$cursor: CursorPaginationInput
$filter: CommunityExhibitorsFilterInput
$sort: EventExhibitorsSortInput
) {
exhibitorsV2(
communityId: $communityId
search: $search
filter: $filter
sort: $sort
cursor: $cursor
) {
pageInfo {
endCursor
hasNextPage
}
totalCount
nodes {
...Exhibitor
}
}
}
fragment Exhibitor on Exhibitor {
id
name
logoUrl
websiteUrl
description
}
Variables
{
"communityId": "Q29tbXVuaXR5XzE=",
"filter": {
"communityGroupIds": ["INSERT_COMMUNITY_GROUP_IDS_HERE"]
},
"cursor": {
"first": 100
}
}
filtered by lastUpdatedSince
Arguments
- communityId - This is string value of the Community Id.
lastUpdatedSince- Datetime to filter Exhibitors based on update time. It is type ofDateTime.
Query
query ExhibitorsV2(
$communityId: ID!
$search: String
$cursor: CursorPaginationInput
$filter: CommunityExhibitorsFilterInput
$sort: EventExhibitorsSortInput
) {
exhibitorsV2(
communityId: $communityId
search: $search
filter: $filter
sort: $sort
cursor: $cursor
) {
pageInfo {
endCursor
hasNextPage
}
totalCount
nodes {
...Exhibitor
}
}
}
fragment Exhibitor on Exhibitor {
id
name
logoUrl
websiteUrl
description
}
Variables
{
"communityId": "Q29tbXVuaXR5XzE=",
"filter": {
"lastUpdatedSince": "2022-08-01 12:00:00"
},
"cursor": {
"first": 100
}
}
filtered by search
Arguments
- communityId - This is string value of the Community Id.
search- Astringused to search for Exhibitors, filtering by matching Exhibitor names or emails.
Query
query ExhibitorsV2(
$communityId: ID!
$search: String
$cursor: CursorPaginationInput
$filter: CommunityExhibitorsFilterInput
$sort: EventExhibitorsSortInput
) {
exhibitorsV2(
communityId: $communityId
search: $search
filter: $filter
sort: $sort
cursor: $cursor
) {
pageInfo {
endCursor
hasNextPage
}
totalCount
nodes {
...Exhibitor
}
}
}
fragment Exhibitor on Exhibitor {
id
name
logoUrl
websiteUrl
description
}
Variables
{
"communityId": "Q29tbXVuaXR5XzE=",
"search": "Exhibitor Name or Email",
"cursor": {
"first": 100
}
}
sorted by field with order
Arguments
- communityId - This is string value of the Community Id.
field- Field to be sorted by. Can be one of["NAME", "DESCRIPTION", "TOTAL_BOOKMARKS", "CREATED_AT", "UPDATED_AT"]order- Order of the sort, can be one of["ASC", "DESC"]
Query
query ExhibitorsV2(
$communityId: ID!
$search: String
$cursor: CursorPaginationInput
$filter: CommunityExhibitorsFilterInput
$sort: EventExhibitorsSortInput
) {
exhibitorsV2(
communityId: $communityId
search: $search
filter: $filter
sort: $sort
cursor: $cursor
) {
pageInfo {
endCursor
hasNextPage
}
totalCount
nodes {
...Exhibitor
}
}
}
fragment Exhibitor on Exhibitor {
id
name
logoUrl
websiteUrl
description
}
Variables
{
"communityId": "Q29tbXVuaXR5XzE=",
"sort": {
"field": "NAME",
"order": "ASC"
},
"cursor": {
"first": 100
}
}
Get the Next hundred Exhibitors filtered by eventId
Query
query ExhibitorsV2(
$communityId: ID!
$search: String
$cursor: CursorPaginationInput
$filter: CommunityExhibitorsFilterInput
$sort: EventExhibitorsSortInput
) {
exhibitorsV2(
communityId: $communityId
search: $search
filter: $filter
sort: $sort
cursor: $cursor
) {
pageInfo {
endCursor
hasNextPage
}
totalCount
nodes {
...Exhibitor
}
}
}
fragment Exhibitor on Exhibitor {
id
name
logoUrl
websiteUrl
description
}
Variables
{
"filter": {
"eventIds": ["RXZlbnRfMQ=="]
},
"communityId": "Q29tbXVuaXR5XzY2NjQ=",
"cursor": {
"after": "WzExMDYxOF0=" // this value, you get from the last query
}
}
Get Exhibitors by Ids filtered by eventId
Arguments
eventId: The Id of the Event on which the search for Exhibitors needs to be done.ids: The Ids of Exhibitors that need to be searched. This is an array and can hold more than one value separated by commas.
Query
query ExhibitorsV2(
$communityId: ID!
$search: String
$cursor: CursorPaginationInput
$filter: CommunityExhibitorsFilterInput
$sort: EventExhibitorsSortInput
) {
exhibitorsV2(
communityId: $communityId
search: $search
filter: $filter
sort: $sort
cursor: $cursor
) {
pageInfo {
endCursor
hasNextPage
}
totalCount
nodes {
...Exhibitor
}
}
}
fragment Exhibitor on Exhibitor {
id
name
logoUrl
websiteUrl
description
}
Variables
{
"filter": {
"eventIds": ["RXZlbnRfMQ=="],
"ids": [
"RXhoaWJzc5MDE3Mg==",
"RXhoaWXzg4MTkyMA=="
]
},
"communityId": "Q29tbXVuaXR5XzY2NjQ="
}
Create Exhibitors
Arguments
eventId: The Id of the event on which the Exhibitor needs to be created/updated.exhibitors object: The data of the Exhibitors that need to be created in Swapcard. Minimum data required for each Exhibitor is name. We strongly recommend to use clientId for each Exhibitor, the clientId has to be a unique external id that never changes and can be used in the future to correctly identify and modify the Exhibitors data.
Query
mutation upsertMyExhibitors($eventId: String!, $exhibitors: [ExhibitorInput!]!) {
upsertEventExhibitors(eventId: $eventId, exhibitors: $exhibitors) {
id
name
logoUrl
websiteUrl
description
}
}
Variables
{
"eventId": "RXZlbnRfMQ==",
"exhibitors": [
{
"name": "Test",
"description": "This is a test Exhibitor.",
"clientId": "Exhibitor12345"
}
]
}
Create Exhibitors with members and custom field set up
Arguments
eventId: The Id of the event on which the Exhibitor needs to be created/updated.exhibitors object: The data of the Exhibitors that need to be created in Swapcard. Minimum data required for each Exhibitor is name. We strongly recommend to use clientId for each Exhibitor, the clientId has to be a unique external id that never changes and can be used in the future to correctly identify and modify the Exhibitors data.membersIds: The id of all the users that will be member for this exhibitor.
Query
mutation upsertMyExhibitors($eventId: String!, $exhibitors: [ExhibitorInput!]!) {
upsertEventExhibitors(eventId: $eventId, exhibitors: $exhibitors) {
id
name
address {
state
street
city
country
zipCode
}
description
documents {
description
id
name
}
customFields {
__typename
...on ListCustomField {
fields {
name
id
value
position
}
group {
name
id
type
}
}
...on UniqueCustomField {
field {
name
id
}
group {
name
type
}
}
}
email
}
}
Variables
{
"eventId": "RXZlbnRfMTcyMjY0",
"exhibitors": [
{
"name": "Test",
"description": "This is a test Exhibitor.",
"clientId": "Exhibitor12345",
"address": {
"city": "city test",
"country": "country test",
"place": "place test",
"state": "state test",
"street": "street test",
"zipCode": "12939492"
},
"email": "email-exhibitor@gmail.com",
"createFields": [
{
"definitionId": "Definition_Id",
"locale": "en_US",
"value": "exhibitor-v"
}
],
"documentsV2": {
"ids": [
"Document_id"
],
"action": "ADD"
},
"membersIds": [
"User_Id"
]
}
]
}
Update Exhibitors
Arguments
eventId: The Id of the Event on which the Exhibitor needs to be created/updated.exhibitors object: The data of the Exhibitors that needs to be created in Swapcard. Minimum data required for each Exhibitor is the name. In this example, we use the clientId to uniquely identify and update the name and description of the Exhibitor.
Query
mutation upsertExhibitors($eventId: String!, $exhibitors: [ExhibitorInput!]!) {
upsertEventExhibitors(eventId: $eventId, exhibitors: $exhibitors) {
id
name
logoUrl
websiteUrl
description
}
}
Variables
{
"eventId": "RXZlbnRfMQ==",
"exhibitors": [
{
"name": "Test Exhibitor Update",
"description": "This is an Updated test Exhibitor.",
"clientId": "Exhibitor12345",
"categories": "Organizer",
"logoUrl": "https://fakeimg.pl/250x100/",
"websiteUrl": "https://test.com",
"type": "Online Marketing "
}
]
}
Update Exhibitors detailed
Arguments
eventId: The Id of the Event on which the Exhibitor needs to be created/updated.exhibitors object: The data of the Exhibitors that need to be created in Swapcard. Minimum data required for each Exhibitor is name.
In this example, we use the clientId to uniquely identify the Exhibitor and then link it with Exhibitor members, custom field, social network and documents.
Custom field values should be created first using setSelectFieldValue, and then the key of the value should be sent in value along with the custom field id in definitionId.
Query
mutation upsertMyExhibitors($eventId: String!, $exhibitors: [ExhibitorInput!]!) {
upsertEventExhibitors(eventId: $eventId, exhibitors: $exhibitors) {
id
name
logoUrl
websiteUrl
description
}
}
Variables
{
"eventId": "RXZlbnRfMQ==",
"exhibitors": [
{
"name": "Test Exhibitor Update",
"description": "This is an Updated test Exhibitor.",
"clientId": "Exhibitor12345",
"categories": "Organizer",
"booths": [{ "name" :"test booth", "id":"12987" }],
"logoUrl": "https://fakeimg.pl/250x100/",
"websiteUrl": "https://test.com",
"type": "Online Marketing ",
"socialNetworks": [{ "profile": "test_twitter exhibitor", "type": "TWITTER"}],
"createFields" : [{definitionId: "RmllbGREZWZpbml0aW9uXzQ2NjEzNA==", value: "france"}, {definitionId: "RmllbGREZWZpbml0aW9uXzQ2NjEzNw==", value: "hall-1"}, {definitionId: "RmllbGREZWZpbml0aW9uXzQ2NjEzOA==", value: "world-food"}, {definitionId: "RmllbGREZWZpbml0aW9uXzQ2NjEzOQ==", value: "tea"}, {definitionId: "RmllbGREZWZpbml0aW9uXzQ2NjEzOQ==", value: "ice-cream"}],
"membersIds": ["RXZlbnRQZW9wbGVfMTI3OTEyMTQ="],
"documents": [
{
"url":"https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf",
"name" :"test2"
}
]
}
]
}
Update Exhibitors using updateExhibitor mutation and link with products
Arguments
eventId: The Id of the Event on which the Exhibitor needs to be updated.exhibitorId: The swapcard Internal Id of the Exhibitor that needs to be updated.
In this example, we use the exhibitorId to uniquely identify and update the name, description and add other details like group id, background image, website URL and logo of the Exhibitor. We can also link Products to Exhibitor using this mutation.
Query
mutation updateExhibitor($input: UpdateExhibitorInput!) {
updateExhibitor(input: $input) {
errors {
code
input
}
exhibitor {
clientIds
createdAt
id
}
}
}
Variables
{
"input" : {
"eventId":"RXZlbnRfMQ==",
"groupId": "RXZlbnRI=",
"exhibitorId": "RXhoaWJpdG9yXzcxMjQ5NA==",
"name":"Updated Exhibitor with Products",
"logoUrl":"www.testExhibitor.png",
"websiteUrl":"www.testExhibitor.com" ,
"backgroundImageUrl": "www.exhibitorbackgroundimage.png",
"productIds": ["UHJvZHVjdF82MTQwMjc=","UHJvZHVjdF97MTQwMjc=" ],
"description": "This is a new updated Exhibitor with products linked to it",
"features": {
"canExportAdvertisements": true,
"canExportChats": true,
"canExportContacts": true,
"canExportDocuments": false,
"canExportExhibitorPages": false,
"canExportExhibitorItems": false,
"canExportMeetingsConfirmed": true,
"canExportRegistrations": false,
"canExportWatchedExhibitorPlannings": false,
"canViewVisits": true,
"inviteMembers": true,
"scanBadge": true
}
}
}
Link Two Exhibitors mutation
Step 1: We create a link between the two Exhibitors. This link defines the relation between the two Exhibitors.
Query
mutation CreateExhibitorLink($input: CreateExhibitorLinkInput!) {
createExhibitorLink(input: $input) {
exhibitorLink {
childName
id
parentName
}
}
}
Variables
{
"input": {
"eventId": "RXZlbnRfMQ==",
"parentName": "Parent Exhibitor",
"childName": "Child Exhibitor"
}
}
Step 2 When we create the link in the above mutation, in the response we get an exhibitorLink Id. Now we use this ID to create a direct link on the UI between the two Exhibitors.
Query
mutation CreateExhibitorLinkRelation($input: CreateExhibitorLinkRelationInput!) {
createExhibitorLinkRelation(input: $input) {
exhibitorLink {
childName
id
parentName
}
}
}
Variables
{
"input": {
"exhibitorLinkId": "RXhoaWJpGlua18xMDAx",
"parentExhibitorId": "RXhoaWJpzc5MDE3Mg==",
"childExhibitorId": "RXhoaWJp4MTkyMA=="
}
}
Delete Exhibitor
Arguments
-
eventId: The Id of the Event on which the Exhibitor needs to be deleted. -
exhibitorIds: The Ids of Exhibitors that need to be deleted. This is an array and can hold more than one value separated by commas.
Query
mutation deleteExhibitors($eventId: String!, $exhibitorIds: [String!]!) {
deleteEventExhibitors(eventId: $eventId, exhibitorsIds: $exhibitorIds) {
id
name
logoUrl
websiteUrl
description
}
}
Variables
{
"eventId": "RXZlbnRfMQ==",
"exhibitorIds": [
"RXhoaWJpdG9yXzI=","RXhoaWJpdG7pXzI="
]
}