{
  "openapi" : "3.0.3",
  "info" : {
    "title" : "Visit Create API",
    "description" : "The Create API is built on HTTP and is RESTful. It has predictable resource URLs and returns HTTP response codes to indicate errors. It also accepts and returns JSON in the HTTP body. Use your favorite HTTP/REST library in your programming language when using this API.\n\nThe base URL for all requests is:```https://api.visitcloud.com/create/v2```\n\n## API Keys and Authentication\n\nAPI keys are managed by event organizers. A key may be configured with access to all events under an event organizer’s account or restricted to specified events only. The expos endpoint can be queried to reveal the scope of access for any given key. When configuring keys, we recommend organizers restrict access to whitelisted IP addresses only for increased security.\nKeys have an optional write permission – without this only **GET** requests are possible with the exception of the webhooks endpoint that supports full webhook management regardless of this setting.\nTo connect to the API, use the API key as the username under a ‘basic authentication’ workflow. Send the corresponding header with every API request.\n\n## Revision\n\nMost endpoints feature a revision property. Revision is an incremental (long) number that advances whenever an item is created or updated. An API record’s revision may therefore change over time if the item is being updated, for example by a registrant updating their details. It can only increase.\n\n## Paging\n\nWhen working with lists of items from GET requests, the API will return up to the maximum number of items available for a single request (normally 100 or 1,000). Items are returned in order of increasing revision, therefore the oldest items are returned first and the most recently created or updated items are returned last. To request the additional pages of items, use the **fromRevision={number}** querystring parameter.\n\n## Synchronizing data\n\n### Using Webhooks\n\nThe preferred and most responsive method is to use Webhooks, which notify connected applications when data is new or updated in the Visit API. They are configured under the webhooks endpoint, and can be the targets of changes to visitors, partners, participants, actions, connections, contents or payments, each of which is an API endpoint.\n\n### Using Polling\n\nAlternatively using a polling approach, it’s possible to query endpoints using the **fromRevision** querystring property. By persisting the highest seen revision number (+1) in a consuming application, it’s possible to retrieve just records which are new or updated in each cycle.\n\n## Rate limiting\n\nFor all API users keys are rate limited to two parallel requests. In the case this usage is exceeded then a **429 (too many requests)**  response will be returned.",
    "version" : "2.0",
    "x-logo" : {
      "backgroundColor" : "#152d49",
      "url" : "https://api.visitcloud.com/legacy/images/visit-color-reversed.svg"
    }
  },
  "security" : [ {
    "basicAuth" : [ ]
  } ],
  "servers" : [ {
    "url" : "https://api.visitcloud.com/create/v2"
  } ],
  "tags" : [ {
    "name" : "Actions",
    "description" : "All types of digital interaction when taking part in an event generate an entry under this endpoint. It can be thought of as the ‘raw data’. Actions may be generated by event staff (for example when printing badges or scanning attendance) or generated by interactions between **visitors** and team members of **partners**. Any interactions with event or partner digital **contents** likewise generates actions. Actions are equally as applicable to a ‘virtual’ events as events with a physical space, though naturally a more limited set of actions will be captured.",
    "x-tag-expanded" : false
  }, {
    "name" : "Activities",
    "description" : "An activity may relate to a presentation or workshop, for example. When using Visit onsite attendee scanning options to capture visitor QR codes, this generates entries under both the **actions** endpoint (the raw data), and a summary of their individual attendance(s) under the **participants** endpoint.",
    "x-tag-expanded" : false
  }, {
    "name" : "Connections",
    "description" : "Interactions between event participants (whether visiting or exhibiting) generate entries under the connections endpoint. Visit also offers a connections API intended for use by individual exhibiting companies, which exposes just their connections only. This requires a valid **license**.\n\nThe endpoint is only available **if enabled for the API key in use**.",
    "x-tag-expanded" : false
  }, {
    "name" : "Contents",
    "description" : "Use this endpoint to manage digital content in use at the event. Content is viewed online in the visitor and exhibitor apps. Interacting with content generates entries under the actions endpoint and also the connections endpoint, as the action generates connections between visitors and partners.\n\nFor events using digital content, items may relate to the event overall, or to a specific partner. In the case of partners, all exhibitors have one profile content item which relates to their company overall; it’s also possible to add multiple product content items.\n\nEach digital content item can be interacted with online or by scanning associated QR codes at an event.",
    "x-tag-expanded" : false
  }, {
    "name" : "Expos",
    "description" : "All other API endpoints are accessed in the context of an expo (event). Use this endpoint to get a list of all the events available to an API key, or more detail about one of the available events.",
    "x-tag-expanded" : true
  }, {
    "name" : "Labels",
    "description" : "Use this endpoint to manage Labels in use at the event.",
    "x-tag-expanded" : false
  }, {
    "name" : "Licenses",
    "description" : "All systems used at an event require a valid license. Licenses apply both to systems that support the overall event delivery (such as badge printing and visitor scanning), and optional functionality for participating **partners** (exhibiting companies).",
    "x-tag-expanded" : false
  }, {
    "name" : "Orders",
    "description" : "Orders represent transactions generated through Visit’s optional shop functionality that relate to a **Visitor** or a **Partner**. An individual visitor or partner may generate multiple orders in the context of an event. Depending on the configured workflow, orders may or may not be required to be completed (paid state) for a visitor registration to be valid (registration state is registered). For orders where one or more of the contained items has a financial cost associated (note that shop items may be configured to be free of charge), the payments are also exposed. Note these are also available from the separate payments endpoint.",
    "x-tag-expanded" : false
  }, {
    "name" : "Participants",
    "description" : "Visitors that take part in an event have an entry in under the this endpoint. From here it's possible to retrieve attendance times, including details of any activities attended (as defined in the **activities** endpoint).",
    "x-tag-expanded" : false
  }, {
    "name" : "Partners",
    "description" : "Partners relates to exhibiting companies at an event. Partners may be created from this endpoint, or through the administration functions available in Visit Create. **Partners** are a child of **Contacts**, therefore it’s possible to associate a single exhibiting company with multiple events. A partner record associates an exhibiting company contact with an event and contains event-specific properties.\n\nTo participate at an event, a partner requires one or more visitor records. Visitor records can optionally be related to a partner, in the case of exhibiting team members.",
    "x-tag-expanded" : false
  }, {
    "name" : "Payments",
    "description" : "When using Payment Service Providers to enable purchasable items through Visit, every payment instruction generates an entry under this endpoint.",
    "x-tag-expanded" : false
  }, {
    "name" : "RegistrationTypes",
    "description" : "Registration types are managed by event organizers, and are used to categorize both **Visitors** and Exhibiting Companies (**Partners**). Registration types are defined to belong to the Organization (available to all events) or are defined within the context of individual events. Partner registration types may only be assigned to **Partners**, and are a mandatory property. Likewise Visitor registration types may only be assigned to Visitors, however only apply to **Visitors** where the registration state is ‘registered’.",
    "x-tag-expanded" : false
  }, {
    "name" : "SendEmail",
    "description" : "Use this endpoint to trigger email deliveries to existing visitors.",
    "x-tag-expanded" : false
  }, {
    "name" : "Touchpoints",
    "description" : "Touchpoints are NFC devices which may be used to log badge scans. Interacting with a touchpoint generates a **connection** between a **visitor** and a **content** item. Use this endpoint to retrieve a list of available touchpoints, for events where they are in use.",
    "x-tag-expanded" : false
  }, {
    "name" : "Upload",
    "description" : "Every visitor registration may optionally have a profile photo, id photo and id document associated with it. Use this endpoint to upload images against visitors using the API.",
    "x-tag-expanded" : false
  }, {
    "name" : "Visitors",
    "description" : "Visitors relates to pre-event registrations. Only visitors with **registrant-state=registered** may then go on to take part in the event. **Contacts** are a child of Visitors, therefore it’s possible to associate a single contact with multiple events. A visitor record associates a contact with an event, and as such contains event-specific registration properties.\n\nFor attendance details and activity during an event, refer to the **participants** endpoint.",
    "x-tag-expanded" : false
  }, {
    "name" : "Webhooks",
    "description" : "Webhooks enable a workflow which notifies consuming applications when new/modified data is available from Visit. Their target URLs will be defined as endpoints which exist on 3rd party domains. Those endpoints are configured with processes responsible for consuming the webhook notifications.\n\nRequests to manage webhooks using the Visit API are authenticated using our standard mechanism of an API key. However, write permission isn’t a requirement – webhooks may also be managed by ‘read-only’ keys since they are not directly modifying Visit data.\n\nWebhooks may also be managed directly from the user interface in Visit Create. See under Organization->API->Webhooks.\n\n|webhook type|purpose|\n|---|---|\n|action|Relates to the **actions** endpoint. Times and details of interactions between event participants (visitors) and any Visit systems..|\n|connection|Relates to the **connections** endpoint. Details of connections made between visitors and exhibitors, through interactions with Visit Connect, Visit Discover and TouchPoints. This includes leads captured.|\n|content|Relates to the **contents** endpoint. Changes have been made to event digital content (managed by the event organiser) or partner profile/product information (managed by partner admin accounts of the event organiser).|\n|order|Relates to the **orders** endpoint. Changes have been made to orders, through a visitor using registration forms or a partner placing an order though Visit Connect. Orders cannot be managed by the API.|\n|participant|Relates to the **participants** endpoint. Participant data is generated for every visitor that has interactions at the event. This endpoint also details timings of any activities attended.|\n|partner|Relates to the **partners** endpoint. Properties of partner records are new/updated. Partner data is managed through imports, using Visit Create and via the API.|\n|payment|Relates to the **payments** endpoint. A payment has been created or updated. Payments are associated with registrations making use of Visit’s eCommerce capabilities.|\n|visitor|Relates to the **visitors** endpoint. Properties of visitor records are new/updated. Visitor data is captured and updated via online registration forms, imports, using Visit Create and via the API. Visitor data includes exhibitor (partner) team members.|\n\n## Example\nConfigured webhooks are called in the format:\n\n**https://&lt;your url&gt;?expoId=&lt;Id&gt;&webhookId=&lt;Id&gt;**\n\nFor example, consider a webhook to receive visitor notifications (webhook type is **visitor**).\n\n1. Visit notifies your endpoint using the format **https://&lt;your url&gt;?expoId=&lt;Id&gt;&webhookId=&lt;Id&gt;**\n2. Use a GET request to retrieve the Visitors in the context of the webhook e.g. **https://api.visitcloud.com/create/v2/visitors/&lt;expoId&gt;?webhookId=&lt;webhookId&gt;**\n3. On completion (visitor data has been received by consuming endpoint), send **2xx** response\n4. Additional webhook notification(s) are sent from the Visit API if additional data is available.\n \n**Important** - for a webhook to be considered as successfully handled, the **2xx** response must be received within **30s** of the initial notification (step 1 above). However, it's important not to send the 2xx response (step 3 above) before the requested payload has been received by the consuming application.\n\n ![Webhook](/legacy/images/webhooks.png) \n\n\n\n## Webhook Schedule\nWebhooks are triggered the instant new or updated data is available in Visit. For successful operation, the consuming application must return http success status (2XX) within 30 seconds. In the case of other http responses, or if the consuming application is inaccessible, the webhook request is assumed to have failed. Failed webhook GET requests are re-attempted according to the following schedule:\n\n|time|description|\n|---|---|\n|0 minutes|Initial call|\n|10 seconds|Retry #1|\n|1 minute|Retry #2|\n|5 minutes|Retry #3|\n|15 minutes|Retry #4|\n|1 hour|Retry #5|\n|1 day|Retry #6. On failure, webhook **state** property is set to **error**. Webhook requests will not be re-attempted until **state** is reset to **wait** (this can be done using a PUT request)|\n\n\n ## Webhook Security\n\nWebhook notifications from the Visit API originate from one of the following IP addresses:\n\n52.30.181.174\n\n52.31.69.196\n\n52.50.125.171\n\nFor increased security it may be desirable to whitelist these within any endpoints that are set up.\nWhen requesting data from the Visit API (for example requesting the visitors notified through a webhook) it's possible to whitelist the IP address(es) of requesting applications by configuring the Visit API key accordingly. API keys are set up and managed by Visit clients.",
    "x-tag-expanded" : false
  } ],
  "paths" : {
    "/actions/{expoId}" : {
      "get" : {
        "tags" : [ "Actions" ],
        "operationId" : "listActions",
        "summary" : "List actions",
        "description" : "A maximum of 100 actions will be retrieved.",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/locationIdQuery"
        }, {
          "$ref" : "#/components/parameters/partnerIdQuery"
        }, {
          "$ref" : "#/components/parameters/visitorIdQuery"
        }, {
          "$ref" : "#/components/parameters/contentIdQuery"
        }, {
          "$ref" : "#/components/parameters/webhookIdQuery"
        }, {
          "$ref" : "#/components/parameters/fromRevision"
        }, {
          "$ref" : "#/components/parameters/limit"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "items" : {
                    "$ref" : "#/components/schemas/ActionItem"
                  },
                  "type" : "array"
                }
              }
            },
            "description" : "The list of Actions."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      }
    },
    "/activities/{expoId}" : {
      "get" : {
        "tags" : [ "Activities" ],
        "operationId" : "listActivities",
        "summary" : "List activities",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        } , {
          "$ref" : "#/components/parameters/webhookIdQuery"
        }, {
          "$ref" : "#/components/parameters/fromRevision"
        }, {
          "$ref" : "#/components/parameters/limit"
        }, {
          "$ref" : "#/components/parameters/showDeletedQuery"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "items" : {
                    "$ref" : "#/components/schemas/ActivityItem"
                  },
                  "type" : "array"
                }
              }
            },
            "description" : "The list of Activities."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      },
        "post" : {
            "tags" : [ "Activities" ],
            "operationId" : "createActivity",
            "summary" : "Create activity",
            "requestBody" : {
                "content" : {
                    "application/json" : {
                        "schema" : {
                            "$ref" : "#/components/schemas/ActivityItem"
                        },
                        "examples" : {
                            "basic" : {
                                "$ref" : "#/components/examples/CreateBasicActivity"
                            }
                        }
                    }
                },
                "required" : true
            },
            "parameters" : [ {
                "$ref" : "#/components/parameters/expoId"
            } ],
            "responses" : {
                "200" : {
                    "content" : {
                        "application/json" : {
                            "schema" : {
                                "$ref" : "#/components/schemas/ActivityItem"
                            }
                        }
                    },
                    "description" : "The created activity."
                },
                "400" : {
                    "$ref" : "#/components/responses/BadRequestExpo"
                },
                "422" : {
                    "$ref" : "#/components/responses/UnprocessableEntity"
                }
            }
        }
    },
    "/activities/{expoId}/{activityId}" : {
      "get" : {
        "tags" : [ "Activities" ],
        "operationId" : "getActivityById",
        "summary" : "Get activity",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/activityIdPath"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ActivityItemDetail"
                }
              }
            },
            "description" : "Activity details."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      },
      "put" : {
        "tags" : [ "Activities" ],
        "operationId" : "updateActivityById",
        "summary" : "Update activity",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ActivityItemDetail"
              },
              "examples" : {
                "expoContent" : {
                  "$ref" : "#/components/examples/ActivityUpdateInfo"
                }
              }
            }
          },
          "required" : true
        },
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/activityIdPath"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ActivityItemDetail"
                }
              }
            },
            "description" : "The updated activity."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "x-400-2" : {
            "$ref" : "#/components/responses/BadRequestUpdateId"
          },
          "422" : {
            "$ref" : "#/components/responses/UnprocessableEntity"
          }
        }
      },
      "delete" : {
        "tags" : [ "Activities" ],
        "operationId" : "deleteActivityById",
        "summary" : "Delete activity",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/activityIdPath"
        } ],
        "responses" : {
          "200" : {
            "description" : "Confirmation of successful deletion."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "x-400-2" : {
            "$ref" : "#/components/responses/BadRequestDeleteId"
          }
        }
      }
    },
    "/connections/{expoId}" : {
      "get" : {
        "tags" : [ "Connections" ],
        "operationId" : "listConnections",
        "summary" : "List connections",
        "description" : "A maximum of 100 connections  will be retrieved.",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "name" : "type",
          "in" : "query",
          "description" : "If partnerId or visitorId are provided, the type is automatically detected.",
          "required" : false,
          "schema" : {
            "$ref" : "#/components/schemas/OwnerType"
          }
        }, {
          "$ref" : "#/components/parameters/partnerIdQuery"
        }, {
          "$ref" : "#/components/parameters/visitorIdQuery"
        }, {
          "$ref" : "#/components/parameters/webhookIdQuery"
        }, {
          "$ref" : "#/components/parameters/fromRevision"
        }, {
          "$ref" : "#/components/parameters/limit"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "items" : {
                    "$ref" : "#/components/schemas/ConnectionItem"
                  },
                  "type" : "array"
                }
              }
            },
            "description" : "The list of Connections."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      }
    },
    "/connections/{expoId}/{connectionId}" : {
      "get" : {
        "tags" : [ "Connections" ],
        "operationId" : "getConnectionById",
        "summary" : "Get connection",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/connectionIdPath"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ConnectionItem"
                }
              }
            },
            "description" : "Connection details."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      }
    },
    "/contents/{expoId}" : {
      "get" : {
        "tags" : [ "Contents" ],
        "operationId" : "listContents",
        "summary" : "List contents",
        "description" : "A maximum of 100 content items will be retrieved.",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/partnerIdQuery"
        }, {
          "$ref" : "#/components/parameters/webhookIdQuery"
        }, {
          "$ref" : "#/components/parameters/fromRevision"
        }, {
          "$ref" : "#/components/parameters/limit"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "items" : {
                    "$ref" : "#/components/schemas/ContentItem"
                  },
                  "type" : "array"
                }
              }
            },
            "description" : "The list of Contents."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      },
      "post" : {
        "tags" : [ "Contents" ],
        "operationId" : "createContent",
        "summary" : "Create content",
        "description" : "Creating a 'product' content will require a 'partnerId', if provided in the body of the request, it will be used instead of 'partnerId' query string parameter. Creating a 'profile' content is not supported.",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ContentItem"
              },
              "examples" : {
                "basic" : {
                  "$ref" : "#/components/examples/CreateBasicContent"
                },
                "expoContent" : {
                  "$ref" : "#/components/examples/ContentCreateInfo"
                }
              }
            }
          },
          "required" : true
        },
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/partnerIdQuery"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContentItem"
                }
              }
            },
            "description" : "The created content."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "422" : {
            "$ref" : "#/components/responses/UnprocessableEntity"
          }
        }
      }
    },
    "/contents/{expoId}/{contentId}" : {
      "get" : {
        "tags" : [ "Contents" ],
        "operationId" : "getContentById",
        "summary" : "Get content",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/contentIdPath"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContentItem"
                }
              }
            },
            "description" : "Content details."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      },
      "put" : {
        "tags" : [ "Contents" ],
        "operationId" : "updateContentById",
        "summary" : "Update content",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ContentItem"
              },
              "examples" : {
                "expoContent" : {
                  "$ref" : "#/components/examples/ContentUpdateInfo"
                }
              }
            }
          },
          "required" : true
        },
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/contentIdPath"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContentItem"
                }
              }
            },
            "description" : "The updated content."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "x-400-2" : {
            "$ref" : "#/components/responses/BadRequestUpdateId"
          },
          "422" : {
            "$ref" : "#/components/responses/UnprocessableEntity"
          }
        }
      },
      "delete" : {
        "tags" : [ "Contents" ],
        "operationId" : "deleteContentById",
        "summary" : "Delete content",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/contentIdPath"
        } ],
        "responses" : {
          "200" : {
            "description" : "Confirmation of successful deletion."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "x-400-2" : {
            "$ref" : "#/components/responses/BadRequestDeleteId"
          }
        }
      }
    },
    "/expos" : {
      "get" : {
        "tags" : [ "Expos" ],
        "operationId" : "listExpos",
        "summary" : "List expos",
        "description" : "A maximum of 100 expos(events)  will be retrieved.",
        "parameters" : [ {
          "$ref" : "#/components/parameters/fromRevision"
        }, {
          "$ref" : "#/components/parameters/limit"
        }, {
          "$ref" : "#/components/parameters/expoReference"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "items" : {
                    "$ref" : "#/components/schemas/ExpoItemBasic"
                  },
                  "type" : "array"
                }
              }
            },
            "description" : "The list of Expos."
          }
        }
      }
    },
    "/expos/{expoId}" : {
      "get" : {
        "tags" : [ "Expos" ],
        "operationId" : "getExpoById",
        "summary" : "Get expo",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ExpoItem"
                }
              }
            },
            "description" : "Expo details."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      }
    },

    "/labels/{expoId}" : {
      "get" : {
        "tags" : [ "Labels" ],
        "operationId" : "listLabels",
        "summary" : "List labels",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/fromRevision"
        }, {
          "$ref" : "#/components/parameters/limit"
        }, {
          "$ref" : "#/components/parameters/showDeletedQuery"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "items" : {
                    "$ref" : "#/components/schemas/LabelItem"
                  },
                  "type" : "array"
                }
              }
            },
            "description" : "The list of Labels."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      },
      "post" : {
        "tags" : [ "Labels" ],
        "operationId" : "createLabel",
        "summary" : "Create label",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/LabelItem"
              },
              "examples" : {
                "basic" : {
                  "$ref" : "#/components/examples/CreateBasicLabel"
                }
              }
            }
          },
          "required" : true
        },
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LabelItem"
                }
              }
            },
            "description" : "The created label."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "422" : {
            "$ref" : "#/components/responses/UnprocessableEntity"
          }
        }
      }
    },
    "/labels/{expoId}/{labelId}" : {
      "get" : {
        "tags" : [ "Labels" ],
        "operationId" : "getLabelById",
        "summary" : "Get label",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/labelIdPath"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LabelItem"
                }
              }
            },
            "description" : "Label details."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      },
      "put" : {
        "tags" : [ "Labels" ],
        "operationId" : "updateLabelById",
        "summary" : "Update label",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/LabelItem"
              },
              "examples" : {
                "expoContent" : {
                  "$ref" : "#/components/examples/LabelUpdateInfo"
                }
              }
            }
          },
          "required" : true
        },
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/labelIdPath"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LabelItem"
                }
              }
            },
            "description" : "The updated label."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "x-400-2" : {
            "$ref" : "#/components/responses/BadRequestUpdateId"
          },
          "422" : {
            "$ref" : "#/components/responses/UnprocessableEntity"
          }
        }
      },
      "delete" : {
        "tags" : [ "Labels" ],
        "operationId" : "deleteLabelById",
        "summary" : "Delete label",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/labelIdPath"
        } ],
        "responses" : {
          "200" : {
            "description" : "Confirmation of successful deletion."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "x-400-2" : {
            "$ref" : "#/components/responses/BadRequestDeleteId"
          }
        }
      }
    },
    "/licenses/{expoId}" : {
      "get" : {
        "tags" : [ "Licenses" ],
        "operationId" : "listLicenses",
        "summary" : "List licenses",
        "description" : "A maximum of 1000 licenses  will be retrieved.",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/partnerIdQuery"
        }, {
          "$ref" : "#/components/parameters/fromRevision"
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "maximum value is 1000",
          "schema" : {
            "format" : "uint16",
            "type" : "integer"
          }
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "items" : {
                    "$ref" : "#/components/schemas/LicenseItem"
                  },
                  "type" : "array"
                }
              }
            },
            "description" : "The list of Licenses."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      },
      "post" : {
        "tags" : [ "Licenses" ],
        "operationId" : "createLicense",
        "summary" : "Create license",
        "description" : "It is require to provide the partner ID in the body or query string, if provided in the body of the request, it will be used instead of 'partnerId' query string parameter.",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/LicenseItem"
              },
              "examples" : {
                "touchpoint" : {
                  "$ref" : "#/components/examples/LicenseCreateTouchpoint"
                },
                "scan" : {
                  "$ref" : "#/components/examples/LicenseCreateScan"
                }
              }
            }
          },
          "required" : true
        },
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "name" : "partnerId",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LicenseItem"
                }
              }
            },
            "description" : "The created license."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "422" : {
            "$ref" : "#/components/responses/UnprocessableEntity"
          }
        }
      }
    },
    "/licenses/{expoId}/{licenseId}" : {
      "get" : {
        "tags" : [ "Licenses" ],
        "operationId" : "getLicenseById",
        "summary" : "Get license",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "name" : "licenseId",
          "in" : "path",
          "description" : "alphanumeric License Id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LicenseItem"
                }
              }
            },
            "description" : "License details."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      },
      "put" : {
        "tags" : [ "Licenses" ],
        "operationId" : "updateLicenseById",
        "summary" : "Update license",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/LicenseItem"
              },
              "examples" : {
                "scan" : {
                  "$ref" : "#/components/examples/LicenseUpdateScan"
                }
              }
            }
          },
          "required" : true
        },
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "name" : "licenseId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LicenseItem"
                }
              }
            },
            "description" : "The updated license."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "x-400-2" : {
            "$ref" : "#/components/responses/BadRequestUpdateId"
          },
          "422" : {
            "$ref" : "#/components/responses/UnprocessableEntity"
          }
        }
      },
      "delete" : {
        "tags" : [ "Licenses" ],
        "operationId" : "deleteLicenseById",
        "summary" : "Delete license",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "name" : "licenseId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            },
            "description" : "Confirmation of the deletion."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "x-400-2" : {
            "$ref" : "#/components/responses/BadRequestDeleteId"
          }
        }
      }
    },
    "/orders/{expoId}" : {
      "get" : {
        "tags" : [ "Orders" ],
        "operationId" : "listOrders",
        "summary" : "List orders",
        "description" : "A maximum of 100 orders will be retrieved",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/visitorIdQuery"
        }, {
          "$ref" : "#/components/parameters/partnerIdQuery"
        }, {
          "$ref" : "#/components/parameters/webhookIdQuery"
        }, {
          "$ref" : "#/components/parameters/fromRevision"
        }, {
          "$ref" : "#/components/parameters/limit"
        }, {
          "name" : "orderStates",
          "in" : "query",
          "style" : "form",
          "explode" : false,
          "schema" : {
            "items" : {
              "enum" : [ "paying", "paymentPending", "completed", "timeout", "cancelled" ],
              "type" : "string"
            },
            "type" : "array"
          }
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "items" : {
                    "$ref" : "#/components/schemas/OrderItem"
                  },
                  "type" : "array"
                }
              }
            },
            "description" : "The list of orders."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      }
    },
    "/orders/{expoId}/{orderId}" : {
      "get" : {
        "tags" : [ "Orders" ],
        "operationId" : "getOrderById",
        "summary" : "Get order",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "name" : "orderId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/OrderItem"
                }
              }
            },
            "description" : "Order details."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      }
    },
    "/participants/{expoId}" : {
      "get" : {
        "tags" : [ "Participants" ],
        "operationId" : "listParticipants",
        "summary" : "List participants",
        "description" : "A maximum of 100 participants will be retrieved.",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/webhookIdQuery"
        }, {
          "$ref" : "#/components/parameters/fromRevision"
        }, {
          "$ref" : "#/components/parameters/limit"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "items" : {
                    "$ref" : "#/components/schemas/ParticipantItem"
                  },
                  "type" : "array"
                }
              }
            },
            "description" : "The list of Participants."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      }
    },
    "/participants/{expoId}/{visitorId}" : {
      "get" : {
        "tags" : [ "Participants" ],
        "operationId" : "getParticipantById",
        "summary" : "Get participant",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "name" : "visitorId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ParticipantItem"
                }
              }
            },
            "description" : "Participant details."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      }
    },
    "/partners/{expoId}" : {
      "get" : {
        "tags" : [ "Partners" ],
        "operationId" : "listPartners",
        "summary" : "List partners",
        "description" : "A maximum of 100 partners will be retrieved.",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/webhookIdQuery"
        }, {
          "$ref" : "#/components/parameters/fromRevision"
        }, {
          "$ref" : "#/components/parameters/limit"
        }, {
          "$ref" : "#/components/parameters/showDeletedQuery"
        }, {
          "name" : "contactReference",
          "description" : "contact 'foreign key'. Enforced to be globally unique across all events.",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "contactId",
          "description" : "alphanumeric Contact Id",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "registrationType",
          "in" : "query",
          "style" : "form",
          "explode" : false,
          "schema" : {
            "items" : {
              "type" : "string"
            },
            "type" : "array"
          }
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "items" : {
                    "$ref" : "#/components/schemas/PartnerItem"
                  },
                  "type" : "array"
                }
              }
            },
            "description" : "The list of Partners."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      },
      "post" : {
        "tags" : [ "Partners" ],
        "operationId" : "createPartner",
        "summary" : "Create partner",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/PartnerItemDetail"
              },
              "examples" : {
                "basic" : {
                  "$ref" : "#/components/examples/PartnerCreateBasic"
                }
              }
            }
          },
          "required" : true
        },
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PartnerItemDetail"
                }
              }
            },
            "description" : "The created partner."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "422" : {
            "$ref" : "#/components/responses/UnprocessableEntity"
          }
        }
      }
    },
    "/partners/{expoId}/{partnerId}" : {
      "get" : {
        "tags" : [ "Partners" ],
        "operationId" : "getPartnerById",
        "summary" : "Get partner",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/partnerIdPath"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PartnerItemDetail"
                }
              }
            },
            "description" : "Partner details."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      },
      "put" : {
        "tags" : [ "Partners" ],
        "operationId" : "updatePartnerById",
        "summary" : "Update partner",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/PartnerItemDetail"
              },
              "examples" : {
                "basic" : {
                  "$ref" : "#/components/examples/PartnerCreateBasic"
                }
              }
            }
          },
          "required" : true
        },
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "name" : "partnerId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PartnerItemDetail"
                }
              }
            },
            "description" : "The updated partner."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "x-400-2" : {
            "$ref" : "#/components/responses/BadRequestUpdateId"
          },
          "422" : {
            "$ref" : "#/components/responses/UnprocessableEntity"
          }
        }
      },
      "delete" : {
        "tags" : [ "Partners" ],
        "operationId" : "deletePartnerById",
        "summary" : "Delete partner",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/partnerIdPath"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            },
            "description" : "Confirmation of the deletion."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "x-400-2" : {
            "$ref" : "#/components/responses/BadRequestDeleteId"
          }
        }
      }
    },
    "/payments/{expoId}" : {
      "get" : {
        "tags" : [ "Payments" ],
        "operationId" : "listPayments",
        "summary" : "List payments",
        "description" : "A maximum of 100 payments will be retrieved",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/visitorIdQuery"
        }, {
          "$ref" : "#/components/parameters/partnerIdQuery"
        }, {
          "$ref" : "#/components/parameters/webhookIdQuery"
        }, {
          "$ref" : "#/components/parameters/fromRevision"
        }, {
          "$ref" : "#/components/parameters/limit"
        }, {
          "name" : "paymentStates",
          "in" : "query",
          "style" : "form",
          "explode" : false,
          "schema" : {
            "items" : {
              "$ref" : "#/components/schemas/PaymentStateType"
            },
            "type" : "array"
          }
        }, {
          "name" : "paymentMethods",
          "in" : "query",
          "style" : "form",
          "explode" : false,
          "schema" : {
            "items" : {
              "$ref" : "#/components/schemas/PaymentMethodType"
            },
            "type" : "array"
          }
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "items" : {
                    "$ref" : "#/components/schemas/PaymentItem"
                  },
                  "type" : "array"
                }
              }
            },
            "description" : "The list of Payments."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      }
    },
    "/payments/{expoId}/{paymentId}" : {
      "get" : {
        "tags" : [ "Payments" ],
        "operationId" : "getPaymentById",
        "summary" : "Get payment",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "name" : "paymentId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PaymentItem"
                }
              }
            },
            "description" : "Payment details."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      },
      "put" : {
        "tags" : [ "Payments" ],
        "operationId" : "updatePaymentById",
        "summary" : "Update payment",
        "description" : "Please note only the state of the payment can be changed, supported payment states are: 'paid', 'denied' and 'pending'.",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/PaymentItem"
              },
              "examples" : {
                "basic" : {
                  "$ref" : "#/components/examples/PaymentUpdateBasic"
                }
              }
            }
          },
          "required" : true
        },
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "name" : "paymentId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PaymentItem"
                }
              }
            },
            "description" : "The updated payment."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      }
    },
    "/registrationTypes/{expoId}" : {
      "get" : {
        "tags" : [ "RegistrationTypes" ],
        "operationId" : "listRegistrationTypes",
        "summary" : "List registration types",
        "description" : "Returns all visitor and partner registration types configured for the organization, and any additional configured for the supplied expo Id.",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "items" : {
                    "$ref" : "#/components/schemas/RegistrationTypeItem"
                  },
                  "type" : "array"
                }
              }
            },
            "description" : "The list of RegistrationTypes."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      }
    },
    "/sendemail/{expoId}" : {
      "post" : {
        "tags" : [ "SendEmail" ],
        "operationId" : "createSendEmail",
        "summary" : "Send Email",
        "description" : "Currently only ‘confirmation’ is supported as the email type; this email is defined according the registration form the visitor has registered from. Set the force property to true to resend the email again, otherwise the email will only be sent in the case the recipient has not already received it. The email send history for any visitor can be checked in the Visit Create interface.",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "object",
                "required" : [ "visitorId", "type" ],
                "properties" : {
                  "visitorId" : {
                    "description" : "The Visitor ID to send the email to.",
                    "type" : "string"
                  },
                  "type" : {
                    "description" : "Email type to be send, currently only supports 'confirmation'",
                    "enum" : [ "confirmation" ],
                    "type" : "string"
                  },
                  "force" : {
                    "description" : "send the email even if it was sent before",
                    "type" : "boolean"
                  }
                }
              }
            }
          }
        },
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "object",
                  "properties" : {
                    "visitorId" : {
                      "type" : "string"
                    },
                    "type" : {
                      "enum" : [ "confirmation" ],
                      "type" : "string"
                    },
                    "force" : {
                      "type" : "boolean"
                    },
                    "sent" : {
                      "description" : "true if the email was sent",
                      "type" : "boolean"
                    }
                  }
                }
              }
            },
            "description" : "The created sendEmail."
          },
          "400" : {
            "description" : "Bad request",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Error"
                },
                "examples" : {
                  "noExpo" : {
                    "summary" : "No expo found for the provided 'expoId'.",
                    "value" : {
                      "status" : 400,
                      "title" : "Expo not found",
                      "type" : "badRequest"
                    }
                  },
                  "expoMissing" : {
                    "summary" : "No value provided for 'expoId'.",
                    "value" : {
                      "status" : 400,
                      "title" : "Field 'expoId' required",
                      "type" : "badRequest"
                    }
                  },
                  "visitorMissing" : {
                    "summary" : "Missing visitor",
                    "value" : {
                      "status" : 400,
                      "title" : "Field 'visitorId' required",
                      "type" : "badRequest"
                    }
                  },
                  "emptyType" : {
                    "summary" : "Empty Type",
                    "value" : {
                      "status" : 400,
                      "title" : "Empty value not allowed for enum 'type'",
                      "type" : "Error while parsing request"
                    }
                  }
                }
              }
            }
          },
          "404" : {
            "description" : "Visitor not found",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Error"
                },
                "examples" : {
                  "noExpo" : {
                    "summary" : "Visitor not found",
                    "value" : {
                      "status" : 404,
                      "type" : "notFound"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/touchpoints/{expoId}" : {
      "get" : {
        "tags" : [ "Touchpoints" ],
        "operationId" : "listTouchpoints",
        "summary" : "List touchpoints",
        "description" : "A maximum of 1000 touchpoints will be retrieved",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/fromRevision"
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "maximum value is 1000",
          "schema" : {
            "format" : "uint16",
            "type" : "integer"
          }
        }, {
          "$ref" : "#/components/parameters/partnerIdQuery"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "items" : {
                    "$ref" : "#/components/schemas/TouchpointItem"
                  },
                  "type" : "array"
                }
              }
            },
            "description" : "The list of Touchpoints."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      }
    },
    "/upload/{source}/{metaId}" : {
      "post" : {
        "tags" : [ "Upload" ],
        "operationId" : "uploadFile",
        "summary" : "Upload file",
        "description" : "",
        "requestBody" : {
          "content" : {
            "application/octet-stream" : {
              "schema" : {
                "properties" : {
                  "data" : {
                    "format" : "binary",
                    "type" : "string"
                  }
                },
                "type" : "object"
              }
            }
          },
          "description" : "File to be uploaded",
          "required" : true
        },
        "parameters" : [ {
          "name" : "source",
          "in" : "path",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/SourceType"
          }
        }, {
          "name" : "metaId",
          "in" : "path",
          "description" : "alphanumeric 'Visitor' Id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "type",
          "in" : "query",
          "description" : "Supported values for 'visitor' source are : 'ProfilePhoto', 'IdCard' and 'IdPhoto'",
          "required" : true,
          "schema" : {
            "type" : "string",
            "enum" : [ "ProfilePhoto", "IdCard", "IdPhoto" ]
          }
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/UploadStatus"
                }
              }
            },
            "description" : "Status of the upload."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestGeneric"
          }
        }
      }
    },
    "/visitors/{expoId}" : {
      "get" : {
        "tags" : [ "Visitors" ],
        "operationId" : "listVisitors",
        "summary" : "List visitors",
        "description" : "A maximum of 100 visitors will be retrieved",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/webhookIdQuery"
        }, {
          "name" : "fromRevision",
          "in" : "query",
          "schema" : {
            "format" : "uint64",
            "type" : "integer"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "maximum value is 100",
          "schema" : {
            "format" : "uint16",
            "type" : "integer"
          }
        }, {
          "name" : "contactReference",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "contactId",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "registrationStates",
          "in" : "query",
          "style" : "form",
          "explode" : false,
          "schema" : {
            "items" : {
              "$ref" : "#/components/schemas/RegistrationStateType"
            },
            "type" : "array"
          }
        }, {
          "name" : "registrationTypes",
          "in" : "query",
          "style" : "form",
          "explode" : false,
          "description" : "An array of registration type Ids.",
          "schema" : {
            "items" : {
              "type" : "string"
            },
            "type" : "array"
          }
        }, {
          "$ref" : "#/components/parameters/showDeletedQuery"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "items" : {
                    "$ref" : "#/components/schemas/VisitorItem"
                  },
                  "type" : "array"
                }
              }
            },
            "description" : "The list of Visitors."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      },
      "post" : {
        "tags" : [ "Visitors" ],
        "operationId" : "createVisitor",
        "summary" : "Create visitor",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VisitorItem"
              },
              "examples" : {
                "basic" : {
                  "$ref" : "#/components/examples/VisitorCreateBasic"
                }
              }
            }
          },
          "required" : true
        },
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/VisitorItem"
                }
              }
            },
            "description" : "The created visitor."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "422" : {
            "$ref" : "#/components/responses/UnprocessableEntity"
          }
        }
      }
    },
    "/visitors/{expoId}/{visitorId}" : {
      "get" : {
        "tags" : [ "Visitors" ],
        "operationId" : "getVisitorById",
        "summary" : "Get visitor",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/visitorIdPath"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/VisitorItem"
                }
              }
            },
            "description" : "Visitor details."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      },
      "put" : {
        "tags" : [ "Visitors" ],
        "operationId" : "updateVisitorById",
        "summary" : "Update visitor",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VisitorItem"
              },
              "examples" : {
                "basic" : {
                  "$ref" : "#/components/examples/VisitorCreateBasic"
                }
              }
            }
          },
          "required" : true
        },
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/visitorIdPath"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/VisitorItem"
                }
              }
            },
            "description" : "The updated visitor."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "x-400-2" : {
            "$ref" : "#/components/responses/BadRequestUpdateId"
          },
          "422" : {
            "$ref" : "#/components/responses/UnprocessableEntity"
          }
        }
      },
      "delete" : {
        "tags" : [ "Visitors" ],
        "operationId" : "deleteVisitorById",
        "summary" : "Delete visitor",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/visitorIdPath"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            },
            "description" : "Confirmation of the deletion."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "x-400-2" : {
            "$ref" : "#/components/responses/BadRequestDeleteId"
          }
        }
      }
    },
    "/webhooks/{expoId}" : {
      "get" : {
        "description" : "Returns an array of webhooks created in the context of the API key in use",
        "tags" : [ "Webhooks" ],
        "operationId" : "listWebhooks",
        "summary" : "List webhooks",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "items" : {
                    "$ref" : "#/components/schemas/WebhookItem"
                  },
                  "type" : "array"
                }
              }
            },
            "description" : "The list of Webhooks."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      },
      "post" : {
        "description" : "Configures a new webhook of the specified type, associated with a 3rd party URL. Webhooks are called in the format:\n\n**https://&lt;your_url&gt;?expoId=&lt;id&gt;&webhookId=&lt;id&gt;**",
        "tags" : [ "Webhooks" ],
        "operationId" : "createWebhook",
        "summary" : "Create webhook",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/WebhookItem"
              },
              "examples": {
                "webhookContent": {
                  "$ref": "#/components/examples/WebhookCreateBasic"
                }
              }
            }
          },
          "required" : true
        },
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WebhookItem"
                }
              }
            },
            "description" : "The created webhook."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "422" : {
            "$ref" : "#/components/responses/UnprocessableEntity"
          }
        }
      }
    },
    "/webhooks/{expoId}/{webhookId}" : {
      "get" : {
        "description" : "Returns full detail of a specified webhook, including its usage history.",
        "tags" : [ "Webhooks" ],
        "operationId" : "getWebhookById",
        "summary" : "Get webhook",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/webhookIdPath"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WebhookItem"
                }
              }
            },
            "description" : "Webhook details."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          }
        }
      },
      "put" : {
        "description" : "Use a PUT request to enable or disable an existing webhook.",
        "tags" : [ "Webhooks" ],
        "operationId" : "updateWebhookById",
        "summary" : "Update webhook",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/WebhookItem"
              },
              "examples" : {
                "expoContent" : {
                  "$ref" : "#/components/examples/WebhookUpdateBasic"
                }
              }
            }
          },
          "required" : true
        },
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/webhookIdPath"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WebhookItem"
                }
              }
            },
            "description" : "The updated webhook."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "x-400-2" : {
            "$ref" : "#/components/responses/BadRequestUpdateId"
          },
          "422" : {
            "$ref" : "#/components/responses/UnprocessableEntity"
          }
        }
      },
      "delete" : {
        "description" : "Permanently deletes a webhook by its Id",
        "tags" : [ "Webhooks" ],
        "operationId" : "deleteWebhookById",
        "summary" : "Delete webhook",
        "parameters" : [ {
          "$ref" : "#/components/parameters/expoId"
        }, {
          "$ref" : "#/components/parameters/webhookIdPath"
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            },
            "description" : "Confirmation of the deletion."
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequestExpo"
          },
          "x-400-2" : {
            "$ref" : "#/components/responses/BadRequestDeleteId"
          }
        }
      }
    }
  },
  "components" : {
    "securitySchemes" : {
      "basicAuth" : {
        "scheme" : "basic",
        "type" : "http"
      }
    },
    "parameters" : {
      "expoId" : {
        "name" : "expoId",
        "description" : "alphanumeric Expo (event) Id",
        "in" : "path",
        "required" : true,
        "schema" : {
          "type" : "string"
        }
      },
      "activityIdPath" : {
        "name" : "activityId",
        "description" : "alphanumeric Activity Id",
        "in" : "path",
        "required" : true,
        "schema" : {
          "type" : "string"
        }
      },
      "activityIdQuery" : {
        "name" : "activity Id",
        "description" : "alphanumeric Activity Id",
        "in" : "query",
        "schema" : {
          "type" : "string"
        }
      },
      "connectionIdPath" : {
        "name" : "connectionId",
        "description" : "alphanumeric Connection Id",
        "in" : "path",
        "required" : true,
        "schema" : {
          "type" : "string"
        }
      },
      "contentIdPath" : {
        "name" : "contentId",
        "description" : "alphanumeric Content Id",
        "in" : "path",
        "required" : true,
        "schema" : {
          "type" : "string"
        }
      },
      "contentIdQuery" : {
        "name" : "contentId",
        "description" : "alphanumeric Content Id",
        "in" : "query",
        "schema" : {
          "type" : "string"
        }
      },
      "labelIdPath" : {
        "name" : "labelId",
        "description" : "alphanumeric Label Id",
        "in" : "path",
        "required" : true,
        "schema" : {
          "type" : "string"
        }
      },
      "locationIdQuery" : {
        "name" : "locationId",
        "description" : "alphanumeric Location Id",
        "in" : "query",
        "schema" : {
          "type" : "string"
        }
      },
      "partnerIdPath" : {
        "name" : "partnerId",
        "description" : "alphanumeric Partner Id",
        "in" : "path",
        "required" : true,
        "schema" : {
          "type" : "string"
        }
      },
      "partnerIdQuery" : {
        "name" : "partnerId",
        "description" : "alphanumeric Partner Id",
        "in" : "query",
        "schema" : {
          "type" : "string"
        }
      },
      "partnerIdQueryRequired" : {
        "name" : "partnerId",
        "description" : "alphanumeric Partner Id",
        "in" : "query",
        "required" : true,
        "schema" : {
          "type" : "string"
        }
      },
      "showDeletedQuery" : {
        "name" : "showDeleted",
        "description" : "shows or hides deleted items. Default state is show (true).",
        "in" : "query",
        "schema" : {
          "type" : "boolean"
        }
      },
      "visitorIdPath" : {
        "name" : "visitorId",
        "description" : "alphanumeric Visitor Id",
        "in" : "path",
        "required" : true,
        "schema" : {
          "type" : "string"
        }
      },
      "visitorIdQuery" : {
        "name" : "visitorId",
        "description" : "alphanumeric Visitor Id",
        "in" : "query",
        "schema" : {
          "type" : "string"
        }
      },
      "webhookIdPath" : {
        "name" : "webhookId",
        "description" : "alphanumeric Webhook Id",
        "in" : "path",
        "required" : true,
        "schema" : {
          "type" : "string"
        }
      },
      "webhookIdQuery" : {
        "name" : "webhookId",
        "description" : "alphanumeric Webhook Id",
        "in" : "query",
        "schema" : {
          "type" : "string"
        }
      },
      "fromRevision" : {
        "name" : "fromRevision",
        "description" : "returns items with revision number >= specified value",
        "in" : "query",
        "schema" : {
          "format" : "uint64",
          "type" : "integer"
        }
      },
      "limit" : {
        "name" : "limit",
        "in" : "query",
        "description" : "maximum value is 100",
        "schema" : {
          "format" : "uint16",
          "type" : "integer"
        }
      },
      "expoReference" : {
        "name" : "reference",
        "in" : "query",
        "description" : "expo (event) reference. Not enforced to be unique.",
        "schema" : {
          "type" : "string"
        }
      }
    },
    "responses" : {
      "BadRequestExpo" : {
        "description" : "Bad request",
        "content" : {
          "application/json" : {
            "schema" : {
              "$ref" : "#/components/schemas/Error"
            },
            "examples" : {
              "noExpo" : {
                "summary" : "No expo found for the provided 'expoId'.",
                "value" : {
                  "status" : 400,
                  "title" : "Expo not found",
                  "type" : "badRequest"
                }
              },
              "expoMissing" : {
                "summary" : "No value provided for 'expoId'.",
                "value" : {
                  "status" : 400,
                  "title" : "Field 'expoId' required",
                  "type" : "badRequest"
                }
              }
            }
          }
        }
      },
      "BadRequestGeneric" : {
        "description" : "Bad request. Invalid parameters provided.",
        "content" : {
          "application/json" : {
            "schema" : {
              "$ref" : "#/components/schemas/Error"
            },
            "examples" : {
              "noId" : {
                "summary" : "No 'id' provided",
                "value" : {
                  "status" : 400,
                  "title" : "Field required",
                  "type" : "badRequest"
                }
              }
            }
          }
        }
      },
      "BadRequestUpdateId" : {
        "description" : "Bad request",
        "content" : {
          "application/json" : {
            "schema" : {
              "$ref" : "#/components/schemas/Error"
            },
            "examples" : {
              "noId" : {
                "summary" : "No 'id' provided",
                "value" : {
                  "status" : 400,
                  "title" : "Update without id not allowed",
                  "type" : "badRequest"
                }
              }
            }
          }
        }
      },
      "BadRequestDeleteId" : {
        "description" : "Bad request",
        "content" : {
          "application/json" : {
            "schema" : {
              "$ref" : "#/components/schemas/Error"
            },
            "examples" : {
              "noId" : {
                "summary" : "No 'id' provided",
                "value" : {
                  "status" : 400,
                  "title" : "Delete without id not allowed",
                  "type" : "badRequest"
                }
              }
            }
          }
        }
      },
      "UnprocessableEntity" : {
        "description" : "Unprocessable entity. Invalid properties provided, multiple validation errors can be returned.",
        "content" : {
          "application/json" : {
            "schema" : {
              "$ref" : "#/components/schemas/Error2"
            },
            "examples" : {
              "errors" : {
                "summary" : "Invalid properties.",
                "value" : {
                  "errorCode" : "unprocessableEntity",
                  "errors" : [ {
                    "description" : "FIELD required",
                    "error" : "required",
                    "field" : "FIELD"
                  } ]
                }
              }
            }
          }
        }
      }
    },
    "examples" : {
      "ActivityUpdateInfo" : {
        "summary" : "basic activity properties",
        "value" : {
          "name" : "Test activity updated",
          "type" : "lunch",
          "start" : "2025-12-09T18:30:00Z",
          "end" : "2025-12-09T20:00:00Z",
          "access" : "signup"
        }
      },
      "CreateBasicActivity" : {
        "summary" : "Minimum properties required activity",
        "value" : {
          "name" : "Test activity",
          "type" : "dinner",
          "start" : "2025-12-08T18:30:00Z",
          "end" : "2025-12-08T20:00:00Z",
          "access" : "open"
        }
      },
      "CreateBasicContent" : {
        "summary" : "Minimum properties required content",
        "value" : {
          "name" : "Product one",
          "source" : "internal",
          "summary" : "happy pineapple",
          "type" : "product"
        }
      },
      "ContentCreateInfo" : {
        "summary" : "'Info' content",
        "value" : {
          "name" : "Test expo content",
          "source" : "internal",
          "summary" : "Content created in expo.",
          "type" : "info"
        }
      },
      "ContentUpdateInfo" : {
        "summary" : "'Info' content",
        "value" : {
          "name" : "Test expo content updated",
          "summary" : "Content updated in expo."
        }
      },
      "CreateBasicLabel" : {
        "summary" : "Minimum properties required label",
        "value" : {
          "name" : "Test label",
          "color" : "#002c4b",
          "types" : ["profile"]
        }
      },
      "LabelUpdateInfo" : {
        "summary" : "basic label properties",
        "value" : {
          "name" : "Test label updated",
          "descriptions": [],
          "titles": [],
          "color": "#72bf44",
          "types": ["profile", "product"]
        }
      },
      "LicenseCreateTouchpoint" : {
        "summary" : "basic 'touchpoint' license",
        "value" : {
          "activationMax" : 1,
          "type" : "touchpoint"
        }
      },
      "LicenseCreateScan" : {
        "summary" : "basic 'scan' license",
        "value" : {
          "activationMax" : 5,
          "type" : "scan"
        }
      },
      "LicenseUpdateScan" : {
        "summary" : "basic 'scan' license",
        "value" : {
          "activationMax" : 10
        }
      },
      "PartnerCreateBasic" : {
        "summary" : "basic partner properties",
        "value" : {
          "contact" : {
            "addresses" : [ {
              "address" : "Main Road",
              "city" : "London",
              "country" : "GB",
              "houseNumber" : "64",
              "houseNumberSuffix" : "B",
              "postalCode" : "",
              "type" : "postal"
            } ],
            "company" : "GES",
            "companyName" : "GES Event Intelligence",
            "companyWebsite" : "https://visitcloud.com/",
            "department" : "Events",
            "email" : "events@ges.com",
            "firstName" : "Support",
            "gender" : "male",
            "jobFunction" : "Support",
            "lastName" : "Visit Cloud",
            "nationality" : "",
            "reference" : "test123"
          },
          "name" : "Demo Support Partner",
          "registrationType" : {
            "id" : "1z47lg9i0",
            "name" : "Exhibitor"
          },
          "translation" : {
            "id" : "3h1y3s51h19vf",
            "iso" : "EN"
          }
        }
      },
      "PartnerUpdateBasic" : {
        "summary" : "basic partner properties",
        "value" : {
          "boothType" : "",
          "boothNumber" : "123",
          "boothSize" : 5,
          "contact" : {
            "addresses" : [ {
              "address" : "Main Road",
              "city" : "London",
              "country" : "GB",
              "houseNumber" : "64",
              "houseNumberSuffix" : "B",
              "postalCode" : "",
              "state" : "",
              "type" : "postal"
            } ],
            "companyName" : "GES Event Intelligence",
            "companyPhone" : "",
            "companyWebsite" : "https://visitcloud.com/",
            "department" : "Events",
            "email" : "events@ges.com",
            "firstName" : "Support",
            "gender" : "male",
            "id" : "2wmzn4isvg5ii",
            "jobFunction" : "Support",
            "lastName" : "Visit Cloud",
            "reference" : "test123",
            "website" : "https://visitcloud.com/"
          },
          "id" : "1vsya45ior1cd",
          "name" : "GES Event Intelligence Updated",
          "registrationType" : {
            "id" : "1z47lg9i0",
            "name" : "Exhibitor"
          },
          "staffTypes" : [ {
            "freeBadges" : 1,
            "id" : "1z47lg9hx",
            "name" : "Staff"
          } ],
          "translation" : {
            "id" : "3oyqf2n72hajl"
          }
        }
      },
      "PaymentUpdateBasic" : {
        "summary" : "basic payment properties",
        "value" : {
          "id" : "1aug2wyzngusj",
          "paymentState" : "paid"
        }
      },
      "VisitorCreateBasic" : {
        "summary" : "basic visitor properties",
        "value" : {
          "contact" : {
            "reference" : "test1234",
            "firstName" : "Demo",
            "lastName" : "User"
          },
          "form" : {
            "id" : "1m4l27jsim7ch"
          },
          "registerTime" : "2024-04-08T11:56:09Z",
          "registrationState" : "registered",
          "registrationType" : {
            "id" : "1z47lg9i9"
          }
        }
      },
      "VisitorUpdateBasic" : {
        "summary" : "basic visitor properties",
        "value" : {
          "actionCode" : null,
          "comments" : "",
          "confirmationDocumentUrl" : "https://resource-dev.visitcloud.com/document/pdf/1l6qssrj5713k?verifier=qmnafS9ONBM-Npd6QJt_GKklbAw",
          "contact" : {
            "firstName" : "Demo",
            "id" : "05vumjziqfzro",
            "lastName" : "User",
            "reference" : "test1234"
          },
          "deleted" : false,
          "form" : {
            "id" : "1m4l27jsim7ch",
            "name" : "Test Visitor Registration Drama"
          },
          "id" : "1l6qssrj5713k",
          "method" : "online",
          "ordered" : null,
          "partner" : null,
          "partnerAssociation" : null,
          "registerTime" : "2024-04-08T11:56:09Z",
          "registrationState" : "registered",
          "registrationType" : {
            "id" : "1z47lg9i9",
            "name" : "Testing guru"
          },
          "translation" : {
            "id" : "3oyqf2n72hajl"
          }
        }
      },
      "WebhookUpdateBasic" : {
        "summary" : "basic weebhook properties",
        "value" : {
          "state" : "wait",
          "enabled" : true
        }
      },
      "WebhookCreateBasic" : {
        "summary" : "basic create webhook properties",
        "value" : {
          "enabled": true,
          "type": "visitor",
          "url": "https://<your_webhook_endpoint>"
        }
      }
    },
    "schemas" : {
      "Error" : {
        "type" : "object",
        "properties" : {
          "status" : {
            "type" : "integer"
          },
          "title" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string"
          }
        }
      },
      "Error2" : {
        "type" : "object",
        "properties" : {
          "errorCode" : {
            "type" : "string",
            "enum" : [ "unprocessableEntity" ]
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "type" : "object",
              "properties" : {
                "description" : {
                  "type" : "string"
                },
                "error" : {
                  "type" : "string"
                },
                "field" : {
                  "type" : "string"
                }
              },
              "required" : [ "description", "error", "field" ]
            }
          }
        }
      },
      "AccessType" : {
        "enum" : [ "open", "signup", "paid" ],
        "type" : "string"
      },
      "ActionCodeItem" : {
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string"
          },
          "value" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "ActionInputType" : {
        "enum" : [ "ticket", "actionCode", "badge", "connection", "seminar", "passing" ],
        "type" : "string"
      },
      "ActionSourceType" : {
        "enum" : [ "visitCreate", "visitCheckin", "api", "visitConnect", "visitDiscover", "visitCheckinLite" ],
        "type" : "string"
      },
      "ActionItem" : {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "action" : {
            "$ref" : "#/components/schemas/ActionType"
          },
          "content" : {
            "$ref" : "#/components/schemas/ContentItemBase"
          },
          "input" : {
            "$ref" : "#/components/schemas/ActionInputType"
          },
          "location" : {
            "$ref" : "#/components/schemas/LocationItemBase"
          },
          "partner" : {
            "$ref" : "#/components/schemas/PartnerItemBase"
          },
          "printed" : {
            "type" : "boolean"
          },
          "revision" : {
            "format" : "uint64",
            "type" : "integer"
          },
          "source" : {
            "$ref" : "#/components/schemas/ActionSourceType"
          },
          "time" : {
            "type" : "string"
          },
          "visitor" : {
            "$ref" : "#/components/schemas/VisitorItemBase"
          }
        },
        "type" : "object"
      },
      "ActionType" : {
        "enum" : [ "scan", "print", "manual" ],
        "type" : "string"
      },
      "ActivityItemBase" : {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "ActivityItem" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/ActivityItemBase"
        }, {
          "properties" : {
            "access" : {
              "$ref" : "#/components/schemas/AccessType"
            },
            "areaLocation" : {
              "$ref" : "#/components/schemas/LocationItemBase"
            },
            "capacity" : {
              "format" : "uint32",
              "type" : "integer"
            },
            "capacityRestricted" : {
              "type" : "boolean"
            },
            "deleted" : {
              "type" : "boolean"
            },
            "descriptions" : {
              "items" : {
                "$ref" : "#/components/schemas/TextItem"
              },
              "type" : "array"
            },
            "end" : {
              "type" : "string"
            },
            "labels" : {
              "items" : {
                "$ref" : "#/components/schemas/LabelItemBase"
              },
              "type" : "array"
            },
            "language" : {
              "type" : "string"
            },
            "leaders" : {
              "items" : {
                "$ref" : "#/components/schemas/LeaderItem"
              },
              "type" : "array"
            },
            "partners" : {
              "items" : {
                "$ref" : "#/components/schemas/ActivityPartnerItem"
              },
              "type" : "array"
            },
            "points" : {
              "format" : "uint32",
              "type" : "integer"
            },
            "reference" : {
              "type" : "string"
            },
            "revision" : {
              "format" : "uint64",
              "type" : "integer"
            },
            "start" : {
              "type" : "string"
            },
            "streamUrl" : {
              "type" : "string"
            },
            "summaries" : {
              "items" : {
                "$ref" : "#/components/schemas/TextItem"
              },
              "type" : "array"
            },
            "titles" : {
              "items" : {
                "$ref" : "#/components/schemas/TextItem"
              },
              "type" : "array"
            },
            "tracks" : {
              "items" : {
                 "$ref" : "#/components/schemas/GroupItemBasic"
              },
              "type" : "array"
            },
            "type" : {
              "$ref" : "#/components/schemas/ActivityType"
            }
          },
          "type" : "object"
        } ]
      },
      "ActivityItemDetail" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/ActivityItem"
        }, {
          "properties" : {
            "participants" : {
              "items" : {
                "$ref" : "#/components/schemas/ActivityParticipantItemVisitor"
              },
              "type" : "array"
            }
          },
          "type" : "object"
        } ]
      },
      "ActivityParticipantItemBase" : {
        "properties" : {
          "dwellingPercentage" : {
            "format" : "uint8",
            "type" : "integer"
          },
          "dwellingTime" : {
            "format" : "uint32",
            "type" : "integer"
          },
          "firstEntryTime" : {
            "type" : "string"
          },
          "lastExitTime" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "ActivityParticipantItemActivity" : {
        "allOf" : [ {
          "properties" : {
            "activity" : {
              "$ref" : "#/components/schemas/ActivityItemBase"
            }
          },
          "type" : "object"
        }, {
          "$ref" : "#/components/schemas/ActivityParticipantItemBase"
        } ]
      },
      "ActivityParticipantItemVisitor" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/ActivityParticipantItemBase"
        }, {
          "properties" : {
            "visitor" : {
              "$ref" : "#/components/schemas/VisitorItemBase"
            }
          },
          "type" : "object"
        } ]
      },
      "ActivityPartnerItem" : {
        "properties" : {
          "partner" : {
            "$ref" : "#/components/schemas/PartnerItemBase"
          },
          "sponsor" : {
            "type" : "boolean"
          },
          "shareAttendees" : {
            "type" : "boolean"
          }
        },
        "type" : "object"
      },
      "ActivityType" : {
        "enum" : [ "other", "break", "lunch", "dinner", "openingCeremony", "closingCeremony", "session", "seminar", "workshop", "presentation", "roundtable", "keynote", "networkingEvent", "qa", "panelDiscussion", "showcase" ],
        "type" : "string"
      },
      "AddressItem" : {
        "properties" : {
          "address" : {
            "maxLength" : 250,
            "type" : "string"
          },
          "city" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "country" : {
            "description" : "The ISO 3166-1 two character code of the country",
            "pattern" : "^[a-zA-Z]{2}$",
            "type" : "string"
          },
          "houseNumber" : {
            "maxLength" : 10,
            "type" : "string"
          },
          "houseNumberSuffix" : {
            "maxLength" : 10,
            "type" : "string"
          },
          "postalCode" : {
            "maxLength" : 50,
            "type" : "string"
          },
          "state" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "type" : {
            "$ref" : "#/components/schemas/AddressType"
          }
        },
        "type" : "object"
      },
      "AddressType" : {
        "enum" : [ "postal", "billing" ],
        "type" : "string"
      },
      "AnswerItemBase" : {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "type" : {
            "$ref" : "#/components/schemas/AnswerType"
          },
          "value" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "AnswerItemBasic" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/AnswerItemBase"
        }, {
          "properties" : {
            "reference" : {
              "type" : "string"
            }
          },
          "type" : "object"
        } ]
      },
      "AnswerItem" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/AnswerItemBasic"
        }, {
          "properties" : {
            "sort" : {
              "format" : "uint8",
              "type" : "integer"
            }
          },
          "type" : "object"
        } ]
      },
      "AnswerType" : {
        "enum" : [ "label", "smallText", "largeText", "numeric", "date", "email", "URL", "phone", "country", "code", "capitalize", "upperCase", "lowerCase", "initials", "postalCode", "phoneSplit" ],
        "type" : "string"
      },
      "AssociationType" : {
        "enum" : [ "guest", "staff" ],
        "type" : "string"
      },
      "AttendanceStateType" : {
        "enum" : [ "noShow", "show" ],
        "type" : "string"
      },
      "AttendanceType" : {
        "enum" : [ "online", "onsite" ],
        "type" : "string"
      },
      "ConnectionAddressItem" : {
        "properties" : {
          "address" : {
            "maxLength" : 250,
            "type" : "string"
          },
          "city" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "country" : {
            "description" : "The ISO 3166-1 two character code of the country",
            "pattern" : "^[a-zA-Z]{2}$",
            "type" : "string"
          },
          "houseNumber" : {
            "maxLength" : 10,
            "type" : "string"
          },
          "houseNumberSuffix" : {
            "maxLength" : 10,
            "type" : "string"
          },
          "postalCode" : {
            "maxLength" : 50,
            "type" : "string"
          },
          "state" : {
            "maxLength" : 100,
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "ConnectionSourceType2" : {
        "enum" : [ "manual", "un", "ocr", "barcode", "nfc", "rfid" ],
        "type" : "string"
      },
      "ConnectionStateType" : {
        "enum" : [ "modified", "noLicense", "noPermission", "noAccess", "completed" ],
        "type" : "string"
      },
      "ConnectionContactItem" : {
        "properties" : {
          "address" : {
            "$ref" : "#/components/schemas/ConnectionAddressItem"
          },
          "cocNumber" : {
            "maxLength" : 20,
            "type" : "string"
          },
          "company" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "department" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "email" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "fax" : {
            "maxLength" : 50,
            "type" : "string"
          },
          "firstInitials" : {
            "maxLength" : 20,
            "type" : "string"
          },
          "firstName" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "gender" : {
            "$ref" : "#/components/schemas/GenderType"
          },
          "jobFunction" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "lastName" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "lastNamePrefix" : {
            "maxLength" : 20,
            "type" : "string"
          },
          "phone1" : {
            "maxLength" : 50,
            "type" : "string"
          },
          "phone2" : {
            "maxLength" : 50,
            "type" : "string"
          },
          "pictureUrl" : {
            "type" : "string"
          },
          "suffix" : {
            "maxLength" : 20,
            "type" : "string"
          },
          "title" : {
            "maxLength" : 20,
            "type" : "string"
          },
          "vatNumber" : {
            "maxLength" : 20,
            "type" : "string"
          },
          "website" : {
            "maxLength" : 250,
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "ConnectionItem" : {
        "properties" : {
          "contact" : {
            "$ref" : "#/components/schemas/ConnectionContactItem"
          },
          "exhibitorQuestions" : {
            "items" : {
              "$ref" : "#/components/schemas/QuestionItemBase"
            },
            "type" : "array"
          },
          "id" : {
            "type" : "string"
          },
          "notes" : {
            "items" : {
              "$ref" : "#/components/schemas/NoteItem"
            },
            "type" : "array"
          },
          "owner" : {
            "$ref" : "#/components/schemas/OwnerItem"
          },
          "partner" : {
            "$ref" : "#/components/schemas/PartnerItemBase"
          },
          "profileQuestions" : {
            "items" : {
              "$ref" : "#/components/schemas/QuestionItemBase"
            },
            "type" : "array"
          },
          "revision" : {
            "format" : "uint64",
            "type" : "integer"
          },
          "scanInfo" : {
            "type" : "string"
          },
          "source" : {
            "$ref" : "#/components/schemas/ConnectionSourceType2"
          },
          "state" : {
            "$ref" : "#/components/schemas/ConnectionStateType"
          },
          "time" : {
            "type" : "string"
          },
          "visitor" : {
            "$ref" : "#/components/schemas/VisitorItemBase"
          }
        },
        "type" : "object"
      },
      "ContactItemBase" : {
        "properties" : {
          "addresses" : {
            "items" : {
              "$ref" : "#/components/schemas/AddressItem"
            },
            "type" : "array"
          },
          "cocNumber" : {
            "maxLength" : 20,
            "type" : "string"
          },
          "company" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "department" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "email" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "fax" : {
            "maxLength" : 50,
            "type" : "string"
          },
          "firstInitials" : {
            "maxLength" : 20,
            "type" : "string"
          },
          "firstName" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "gender" : {
            "$ref" : "#/components/schemas/GenderType"
          },
          "jobFunction" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "lastName" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "lastNamePrefix" : {
            "maxLength" : 20,
            "type" : "string"
          },
          "phone1" : {
            "maxLength" : 50,
            "type" : "string"
          },
          "phone2" : {
            "maxLength" : 50,
            "type" : "string"
          },
          "suffix" : {
            "maxLength" : 20,
            "type" : "string"
          },
          "title" : {
            "maxLength" : 20,
            "type" : "string"
          },
          "vatNumber" : {
            "maxLength" : 20,
            "type" : "string"
          },
          "website" : {
            "maxLength" : 250,
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "ContactItem" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/ContactItemBase"
        }, {
          "properties" : {
            "anonymized" : {
              "type" : "boolean"
            },
            "comments" : {
              "maxLength" : 100,
              "type" : "string"
            },
            "companyFax" : {
              "maxLength" : 50,
              "type" : "string"
            },
            "companyName" : {
              "maxLength" : 100,
              "type" : "string"
            },
            "companyPhone" : {
              "maxLength" : 50,
              "type" : "string"
            },
            "companyWebsite" : {
              "maxLength" : 250,
              "type" : "string"
            },
            "dateOfBirth" : {
              "type" : "string"
            },
            "id" : {
              "type" : "string"
            },
            "nationality" : {
              "type" : "string"
            },
            "reference" : {
              "type" : "string"
            },
            "socialSecurityNumber" : {
              "maxLength" : 20,
              "type" : "string"
            }
          }
        } ],
        "type" : "object"
      },
      "ContactItemRefBase" : {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "company" : {
            "maxLength" : 100,
            "type" : "string"
          },
          "reference" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "ContactType" : {
        "enum" : [ "visitor", "partner", "leader" ],
        "type" : "string"
      },
      "ContentItemBase" : {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "ContentItem" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/ContentItemBase"
        }, {
          "properties" : {
            "description" : {
              "description" : "Returns the description in default language.",
              "type" : "string",
              "format" : "html",
              "deprecated" : true,
              "readOnly" : true
            },
            "descriptions" : {
              "items" : {
                "$ref" : "#/components/schemas/TextItem"
              },
              "type" : "array"
            },
            "editAllowed" : {
              "type" : "boolean"
            },
            "externalUrl" : {
              "type" : "string",
              "format" : "uri"
            },
            "labels" : {
              "items" : {
                "$ref" : "#/components/schemas/LabelItemBase"
              },
              "type" : "array"
            },
            "links" : {
              "items" : {
                "$ref" : "#/components/schemas/LinkItem"
              },
              "type" : "array"
            },
            "logoExternalUrl" : {
              "type" : "string",
              "format" : "uri"
            },
            "logoUrl" : {
              "type" : "string",
              "format" : "uri"
            },
            "partner" : {
              "$ref" : "#/components/schemas/PartnerItemBase"
            },
            "revision" : {
              "format" : "uint64",
              "type" : "integer"
            },
            "source" : {
              "$ref" : "#/components/schemas/ContentSourceType"
            },
            "summaries" : {
              "items" : {
                "$ref" : "#/components/schemas/TextItem"
              },
              "type" : "array"
            },
            "summary" : {
              "description" : "Returns the summary in default language.",
              "type" : "string",
              "deprecated" : true,
              "readOnly" : true
            },
            "title" : {
              "description" : "Title in default language.",
              "type" : "string",
              "deprecated" : true,
              "readOnly" : true
            },
            "titles" : {
              "items" : {
                "$ref" : "#/components/schemas/TextItem"
              },
              "type" : "array"
            },
            "type" : {
              "$ref" : "#/components/schemas/ContentType"
            }
          },
          "type" : "object"
        } ]
      },
      "ContentLinkType" : {
        "enum" : [ "url", "facebook", "linkedin", "twitter", "instagram", "mastodon", "pinterest" ],
        "type" : "string"
      },
      "ContentSourceType" : {
        "enum" : [ "internal", "link" ],
        "type" : "string"
      },
      "ContentType" : {
        "enum" : [ "profile", "product", "info" ],
        "type" : "string"
      },
      "CustomFieldItem" : {
        "properties" : {
          "customCode" : {
            "type" : "string"
          },
          "id" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "revision" : {
            "format" : "uint64",
            "type" : "integer"
          },
          "value" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "DirectionType" : {
        "enum" : [ "In", "Out", "Both" ],
        "type" : "string"
      },
      "DwellingItem" : {
        "properties" : {
          "dwellingTime" : {
            "format" : "uint32",
            "type" : "integer"
          },
          "firstEntryTime" : {
            "type" : "string"
          },
          "lastExitTime" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "ExpoItemBase" : {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "reference" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "ExpoItemBasic" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/ExpoItemBase"
        }, {
          "properties" : {
            "description" : {
              "type" : "string"
            },
            "start" : {
              "type" : "string"
            },
            "end" : {
              "type" : "string"
            },
            "contactEmail" : {
              "type" : "string"
            },
            "revision" : {
              "format" : "uint64",
              "type" : "integer"
            },
            "timezone" : {
              "type" : "string"
            }
          },
          "type" : "object"
        } ]
      },
      "ExpoItem" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/ExpoItemBasic"
        }, {
          "properties" : {
            "customFields" : {
              "items" : {
                "$ref" : "#/components/schemas/CustomFieldItem"
              },
              "type" : "array"
            },
            "forms" : {
              "items" : {
                "$ref" : "#/components/schemas/SurveyItem"
              },
              "type" : "array"
            },
            "groups" : {
              "$ref" : "#/components/schemas/GroupItem"
            },
            "locations" : {
              "items" : {
                "$ref" : "#/components/schemas/LocationItem"
              },
              "type" : "array"
            },
            "partnerSettings" : {
              "items" : {
                "$ref" : "#/components/schemas/PartnerSettingItem"
              },
              "type" : "array"
            },
            "questions" : {
              "items" : {
                "$ref" : "#/components/schemas/QuestionItem"
              },
              "type" : "array"
            },
            "registrationTypes" : {
              "items" : {
                "$ref" : "#/components/schemas/RegistrationTypeItem"
              },
              "type" : "array"
            },
            "translations" : {
              "items" : {
                "$ref" : "#/components/schemas/TranslationItem"
              },
              "type" : "array"
            }
          },
          "type" : "object"
        } ]
      },
      "FavoriteItem" : {
        "properties" : {
          "type" : {
            "$ref" : "#/components/schemas/VisitorFavoriteType"
          },
          "id" : {
            "type" : "string"
          },
          "time" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "GenderType" : {
        "enum" : [ "male", "female", "other", "secret" ],
        "type" : "string"
      },
      "GroupItem" : {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "type" : {
            "$ref" : "#/components/schemas/GroupType"
          },
          "name" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "GroupItemBasic": {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "GroupType": {
        "enum" : [ "category", "track", "tier" ],
        "type" : "string"
      },
      "LabelItemBase" : {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "LabelItem" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/LabelItemBase"
        }, {
          "properties" : {
            "types" : {
              "items" : {
                "$ref" : "#/components/schemas/LabelType"
              },
              "type" : "array"
            },
            "titles" : {
              "items" : {
                "$ref" : "#/components/schemas/TextItem"
              },
              "type" : "array"
            },
            "descriptions" : {
              "items" : {
                "$ref" : "#/components/schemas/TextItem"
              },
              "type" : "array"
            },
            "color" : {
              "type" : "string"
            },
            "revision" : {
              "format" : "uint64",
              "type" : "integer"
            }
          },
          "type" : "object"
        } ]
      },
      "LabelType" : {
        "enum" : [ "profile", "product" ],
        "type" : "string"
      },
      "LeaderItem" : {
        "properties" : {
          "visitor" : {
            "$ref" : "#/components/schemas/VisitorItemBase"
          },
          "role" : {
            "$ref" : "#/components/schemas/RegistrationTypeItemBase"
          }
        },
        "type" : "object"
      },
      "LevelType" : {
        "enum" : [ "system", "organization", "expo" ],
        "type" : "string"
      },
      "LicenseItemBase" : {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "type" : {
            "$ref" : "#/components/schemas/LicenseType"
          },
          "code" : {
            "type" : "string"
          },
          "inUse" : {
            "type" : "boolean"
          }
        },
        "type" : "object"
      },
      "LicenseItem" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/LicenseItemBase"
        }, {
          "properties" : {
            "activationMax" : {
              "format" : "uint16",
              "type" : "integer"
            },
            "partner" : {
              "$ref" : "#/components/schemas/PartnerItemBase"
            },
            "revision" : {
              "format" : "uint64",
              "type" : "integer"
            }
          },
          "type" : "object"
        } ]
      },
      "LicenseType" : {
        "enum" : [ "scanApp", "touchpoint", "scan" ],
        "type" : "string"
      },
      "LinkItem" : {
        "properties" : {
          "type" : {
            "$ref" : "#/components/schemas/ContentLinkType"
          },
          "url" : {
            "type" : "string",
            "format" : "uri"
          }
        },
        "type" : "object"
      },
      "LocationItemBase" : {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "LocationItem" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/LocationItemBase"
        }, {
          "properties" : {
            "areaCheckEnabled" : {
              "type" : "boolean"
            },
            "areaInLocationId" : {
              "type" : "string"
            },
            "areaOutLocationId" : {
              "type" : "string"
            },
            "capacity" : {
              "format" : "int32",
              "type" : "integer"
            },
            "direction" : {
              "$ref" : "#/components/schemas/DirectionType"
            },
            "type" : {
              "$ref" : "#/components/schemas/LocationType"
            }
          },
          "type" : "object"
        } ]
      },
      "LocationType" : {
        "enum" : [ "Gate", "Area" ],
        "type" : "string"
      },
      "NoteItem" : {
        "properties" : {
          "fileUrl" : {
            "type" : "string"
          },
          "id" : {
            "type" : "string"
          },
          "scanInfo" : {
            "type" : "string"
          },
          "text" : {
            "type" : "string"
          },
          "time" : {
            "type" : "string"
          },
          "type" : {
            "$ref" : "#/components/schemas/NoteType"
          }
        },
        "type" : "object"
      },
      "NoteType" : {
        "enum" : [ "memo", "image", "audio", "avatar" ],
        "type" : "string"
      },
      "OrderItem" : {
        "properties" : {
          "code" : {
            "type" : "string"
          },
          "currency" : {
            "type" : "string"
          },
          "id" : {
            "type" : "string"
          },
          "items" : {
            "items" : {
              "$ref" : "#/components/schemas/OrderItemItem"
            },
            "type" : "array"
          },
          "orderState" : {
            "$ref" : "#/components/schemas/OrderStateType"
          },
          "partner" : {
            "$ref" : "#/components/schemas/PartnerItemBase"
          },
          "payments" : {
            "items" : {
              "$ref" : "#/components/schemas/OrderPaymentItem"
            },
            "type" : "array"
          },
          "revision" : {
            "format" : "uint64",
            "type" : "integer"
          },
          "tickets" : {
            "items" : {
              "$ref" : "#/components/schemas/TicketItem"
            },
            "type" : "array"
          },
          "total" : {
            "format" : "int32",
            "type" : "integer"
          },
          "totalDue" : {
            "format" : "int32",
            "type" : "integer"
          },
          "totalPaid" : {
            "format" : "int32",
            "type" : "integer"
          },
          "totalSub" : {
            "format" : "int32",
            "type" : "integer"
          },
          "totalVat" : {
            "format" : "int32",
            "type" : "integer"
          },
          "visitor" : {
            "$ref" : "#/components/schemas/VisitorItemBase"
          }
        },
        "type" : "object"
      },
      "OrderItemItem" : {
        "properties" : {
          "amountName" : {
            "type" : "string"
          },
          "count" : {
            "format" : "int16",
            "type" : "integer"
          },
          "shopItem" : {
            "$ref" : "#/components/schemas/ShopItem"
          },
          "tax" : {
            "$ref" : "#/components/schemas/TaxClassItem"
          },
          "text" : {
            "type" : "string"
          },
          "totalAmount" : {
            "format" : "int32",
            "type" : "integer"
          },
          "totalAmountVat" : {
            "format" : "int32",
            "type" : "integer"
          }
        },
        "type" : "object"
      },
      "OrderPaymentItem" : {
        "properties" : {
          "amount" : {
            "format" : "int32",
            "type" : "integer"
          },
          "code" : {
            "type" : "string"
          },
          "id" : {
            "type" : "string"
          },
          "paymentMethod" : {
            "$ref" : "#/components/schemas/PaymentMethodType"
          },
          "paymentMethodInfo" : {
            "type" : "string"
          },
          "paymentState" : {
            "$ref" : "#/components/schemas/PaymentStateType"
          },
          "reference" : {
            "type" : "string"
          },
          "refunds" : {
            "items" : {
              "$ref" : "#/components/schemas/RefundItem"
            },
            "type" : "array"
          },
          "time" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "OrderStateType" : {
        "enum" : [ "ordering", "paying", "paymentPending", "completed", "timeout", "cancelled" ],
        "type" : "string"
      },
      "OwnerItem" : {
        "properties" : {
          "partnerId" : {
            "type" : "string"
          },
          "visitorId" : {
            "type" : "string"
          },
          "type" : {
            "$ref" : "#/components/schemas/OwnerType"
          }
        },
        "type" : "object"
      },
      "OwnerType" : {
        "enum" : [ "partner", "visitor" ],
        "type" : "string"
      },
      "PSPModeType" : {
        "enum" : [ "test", "live" ],
        "type" : "string"
      },
      "ParticipantItem" : {
        "properties" : {
          "activities" : {
            "items" : {
              "$ref" : "#/components/schemas/ActivityParticipantItemActivity"
            },
            "type" : "array"
          },
          "attendanceState" : {
            "$ref" : "#/components/schemas/AttendanceStateType"
          },
          "dwelling" : {
            "$ref" : "#/components/schemas/DwellingItem"
          },
          "revision" : {
            "format" : "uint64",
            "type" : "integer"
          },
          "visitTime" : {
            "type" : "string"
          },
          "visitor" : {
            "$ref" : "#/components/schemas/VisitorItemBase"
          },
          "visits" : {
            "format" : "uint32",
            "type" : "integer"
          }
        },
        "type" : "object"
      },
      "PartnerItemBase" : {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "PartnerItemContactBase" : {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "contact" : {
            "$ref" : "#/components/schemas/ContactItemRefBase"
          }
        },
        "type" : "object"
      },
      "PartnerItem" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/PartnerItemBase"
        }, {
          "properties" : {
            "expo" : {
              "$ref" : "#/components/schemas/ExpoItemBase"
            },
            "boothType": {
              "maxLength": 100,
              "type": "string"
            },
            "boothNumber" : {
              "type" : "string"
            },
            "boothSize" : {
              "format" : "uint16",
              "type" : "integer"
            },
            "contact" : {
              "$ref" : "#/components/schemas/ContactItem"
            },
            "deleted" : {
              "type" : "boolean"
            },
            "licenseDownloadUrl" : {
              "type" : "string"
            },
            "licenses" : {
              "items" : {
                "$ref" : "#/components/schemas/LicenseItemBase"
              },
              "type" : "array"
            },
            "ordered" : {
              "$ref" : "#/components/schemas/OrderItem"
            },
            "productMax" : {
              "format" : "uint16",
              "type" : "integer"
            },
            "questionMax" : {
              "format" : "uint16",
              "type" : "integer"
            },
            "reference" : {
              "type" : "string"
            },
            "registrationType" : {
              "$ref" : "#/components/schemas/RegistrationTypeItemBase"
            },
            "registrationUrl" : {
              "type" : "string"
            },
            "revision" : {
              "format" : "uint64",
              "type" : "integer"
            },
            "tags" : {
              "items" : {
                "type" : "string"
              },
              "type" : "array"
            },
            "translation" : {
              "$ref" : "#/components/schemas/TranslationItemBase"
            }
          },
          "type" : "object"
        } ]
      },
      "PartnerItemDetail" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/PartnerItem"
        }, {
          "properties" : {
            "downloadConnectionsUrl" : {
              "type" : "string"
            },
            "pendingChatMax" : {
              "format" : "uint16",
              "type" : "integer"
            },
            "staffTypes" : {
              "items" : {
                "$ref" : "#/components/schemas/StaffItem"
              },
              "type" : "array"
            },
            "visitConnectSetupUrl" : {
              "type" : "string"
            }
          },
          "type" : "object"
        } ]
      },
      "PartnerSettingItem" : {
        "properties" : {
          "registrationType" : {
            "$ref" : "#/components/schemas/RegistrationTypeItem"
          },
          "staff" : {
            "items" : {
              "$ref" : "#/components/schemas/StaffItem"
            },
            "type" : "array"
          }
        },
        "type" : "object"
      },
      "PaymentItem" : {
        "properties" : {
          "code" : {
            "type" : "string"
          },
          "id" : {
            "type" : "string"
          },
          "partner" : {
            "$ref" : "#/components/schemas/PartnerItemBase"
          },
          "paymentMethod" : {
            "$ref" : "#/components/schemas/PaymentMethodType"
          },
          "paymentMethodInfo" : {
            "type" : "string"
          },
          "paymentState" : {
            "$ref" : "#/components/schemas/PaymentStateType"
          },
          "revision" : {
            "format" : "uint64",
            "type" : "integer"
          },
          "visitor" : {
            "$ref" : "#/components/schemas/VisitorItemBase"
          }
        },
        "type" : "object"
      },
      "PaymentMethodType" : {
        "enum" : [ "creditcard", "debitcard", "cash", "cheque", "bankTransfer", "alternative", "unknown", "invoice" ],
        "type" : "string"
      },
      "PaymentStateType" : {
        "enum" : [ "started", "paid", "denied", "pending", "error", "partiallyRefunded", "refunded", "refundDenied", "preAuth" ],
        "type" : "string"
      },
      "PolicyItem" : {
        "properties" : {
          "checked" : {
            "type" : "boolean"
          },
          "time" : {
            "type" : "string"
          },
          "type" : {
            "$ref" : "#/components/schemas/PolicyType"
          }
        },
        "type" : "object"
      },
      "PolicyType" : {
        "enum" : [ "privacy", "stopProcessing", "public", "contactable", "mailing", "dataUse1", "dataUse2", "dataUse3" ],
        "type" : "string"
      },
      "QuestionItemBase" : {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "type" : {
            "$ref" : "#/components/schemas/QuestionType"
          },
          "answers" : {
            "items" : {
              "$ref" : "#/components/schemas/AnswerItemBase"
            },
            "type" : "array"
          }
        },
        "type" : "object"
      },
      "QuestionItemBasic" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/QuestionItemBase"
        }, {
          "properties" : {
            "reference" : {
              "type" : "string"
            },
            "answers" : {
              "items" : {
                "$ref" : "#/components/schemas/AnswerItemBasic"
              },
              "type" : "array"
            }
          }
        } ],
        "type" : "object"
      },
      "QuestionItem" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/QuestionItemBasic"
        }, {
          "properties" : {
            "level" : {
              "$ref" : "#/components/schemas/LevelType"
            },
            "numberOfColumns" : {
              "format" : "uint8",
              "type" : "integer"
            },
            "text" : {
              "type" : "string"
            },
            "answers" : {
              "items" : {
                "$ref" : "#/components/schemas/AnswerItem"
              },
              "type" : "array"
            }
          },
          "type" : "object"
        } ]
      },
      "QuestionType" : {
        "enum" : [ "open", "dropDown", "radio", "checkBox" ],
        "type" : "string"
      },
      "RefundItem" : {
        "properties" : {
          "amount" : {
            "format" : "int32",
            "type" : "integer"
          },
          "code" : {
            "type" : "string"
          },
          "error" : {
            "type" : "string"
          },
          "reason" : {
            "type" : "string"
          },
          "refundState" : {
            "$ref" : "#/components/schemas/RefundStateType"
          },
          "time" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "RefundStateType" : {
        "enum" : [ "none", "started", "success", "denied", "pending", "error" ],
        "type" : "string"
      },
      "RegistrationStateType" : {
        "enum" : [ "invited", "registering", "registered", "denied", "pendingConfirmation", "stopped", "hold", "duplicate" ],
        "type" : "string"
      },
      "RegistrationTypeItemBase" : {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "reference" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "RegistrationTypeItem" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/RegistrationTypeItemBase"
        }, {
          "properties" : {
            "level" : {
              "$ref" : "#/components/schemas/LevelType"
            },
            "type" : {
              "$ref" : "#/components/schemas/ContactType"
            }
          },
          "type" : "object"
        } ]
      },
      "ShopItem" : {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "isTransactionCost" : {
            "type" : "boolean"
          },
          "name" : {
            "type" : "string"
          },
          "reference" : {
            "type" : "string"
          },
          "type" : {
            "$ref" : "#/components/schemas/ShopItemType"
          }
        },
        "type" : "object"
      },
      "ShopItemType" : {
        "enum" : [ "normal", "activity", "staff", "bundle" ],
        "type" : "string"
      },
      "SourceType" : {
        "enum" : [ "visitor" ],
        "type" : "string"
      },
      "StaffItem" : {
        "properties" : {
          "freeBadges" : {
            "format" : "uint16",
            "type" : "integer"
          },
          "id" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "SurveyItemBase" : {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "SurveyItem" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/SurveyItemBase"
        }, {
          "properties" : {
            "pspMode" : {
              "$ref" : "#/components/schemas/PSPModeType"
            },
            "senderEmail" : {
              "type" : "string"
            },
            "url" : {
              "type" : "string"
            }
          },
          "type" : "object"
        } ]
      },
      "TaxClassItem" : {
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "rate" : {
            "format" : "uint16",
            "type" : "integer"
          }
        },
        "type" : "object"
      },
      "TextItem" : {
        "properties" : {
          "id" : {
            "description" : "The translation ID.",
            "type" : "string"
          },
          "value" : {
            "description" : "Translation value.",
            "format" : "html",
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "TicketItem" : {
        "properties" : {
          "code" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "state" : {
            "$ref" : "#/components/schemas/TicketStateType"
          },
          "type" : {
            "$ref" : "#/components/schemas/TicketType"
          }
        },
        "type" : "object"
      },
      "TicketStateType" : {
        "enum" : [ "valid", "canceled" ],
        "type" : "string"
      },
      "TicketType" : {
        "enum" : [ "ecommerce", "ns" ],
        "type" : "string"
      },
      "TouchpointItem" : {
        "properties" : {
          "batteryState" : {
            "format" : "uint8",
            "type" : "integer"
          },
          "content" : {
            "$ref" : "#/components/schemas/ContentItemBase"
          },
          "id" : {
            "type" : "string"
          },
          "partner" : {
            "$ref" : "#/components/schemas/PartnerItemBase"
          },
          "state" : {
            "$ref" : "#/components/schemas/TouchpointStateType"
          }
        },
        "type" : "object"
      },
      "TouchpointStateType" : {
        "enum" : [ "awaitingConnection", "unlinked", "standby", "ok", "warningConnection", "errorLinking", "errorUnlinking", "errorConnection", "errorBattery", "spare", "modemDisabled" ],
        "type" : "string"
      },
      "TrackingItem" : {
        "properties" : {
          "utmCampaign" : {
            "maxLength" : 250,
            "type" : "string"
          },
          "utmContent" : {
            "maxLength" : 250,
            "type" : "string"
          },
          "utmMedium" : {
            "maxLength" : 250,
            "type" : "string"
          },
          "utmSource" : {
            "maxLength" : 250,
            "type" : "string"
          },
          "utmTerm" : {
            "maxLength" : 250,
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "TranslationItemBase" : {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "iso" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "TranslationItem" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/TranslationItemBase"
        }, {
          "properties" : {
            "default" : {
              "type" : "boolean"
            },
            "description" : {
              "type" : "string"
            },
            "language" : {
              "type" : "string"
            }
          },
          "type" : "object"
        } ]
      },
      "UploadStatus" : {
        "enum" : [ "success", "invalidFile", "unableToCache", "missingData" ],
        "type" : "string"
      },
      "VisitorItemBase" : {
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "fullName" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "VisitorItem" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/VisitorItemBase"
        }, {
          "properties" : {
            "expo" : {
              "$ref" : "#/components/schemas/ExpoItemBase"
            },
            "actionCode" : {
              "$ref" : "#/components/schemas/ActionCodeItem"
            },
            "comments" : {
              "type" : "string"
            },
            "confirmationDocumentUrl" : {
              "type" : "string"
            },
            "contact" : {
              "$ref" : "#/components/schemas/ContactItem"
            },
            "dedupePrimaryVisitorId" : {
              "type" : "string"
            },
            "deleted" : {
              "type" : "boolean"
            },
            "emailCc" : {
              "maxLength" : 100,
              "type" : "string"
            },
            "embeddedDigitalBadgeUrl" : {
              "type" : "string"
            },
            "embeddedVisitConnectUrl" : {
              "type" : "string"
            },
            "favorites" : {
              "items" : {
                "$ref" : "#/components/schemas/FavoriteItem"
              },
              "type" : "array"
            },
            "form" : {
              "$ref" : "#/components/schemas/SurveyItemBase"
            },
            "groupPrimaryVisitorId" : {
              "type" : "string"
            },
            "hotlinkUrl" : {
              "type" : "string"
            },
            "id" : {
              "type" : "string"
            },
            "method" : {
              "$ref" : "#/components/schemas/AttendanceType"
            },
            "ordered" : {
              "$ref" : "#/components/schemas/OrderItem"
            },
            "partner" : {
              "$ref" : "#/components/schemas/PartnerItemContactBase"
            },
            "partnerAssociation" : {
              "$ref" : "#/components/schemas/AssociationType"
            },
            "policies" : {
              "items" : {
                "$ref" : "#/components/schemas/PolicyItem"
              },
              "type" : "array"
            },
            "profilePhotoUrl" : {
              "type" : "string"
            },
            "questions" : {
              "items" : {
                "$ref" : "#/components/schemas/QuestionItemBasic"
              },
              "type" : "array"
            },
            "reference" : {
              "type" : "string"
            },
            "registerTime" : {
              "type" : "string"
            },
            "registrationState" : {
              "$ref" : "#/components/schemas/RegistrationStateType"
            },
            "registrationType" : {
              "$ref" : "#/components/schemas/RegistrationTypeItemBase"
            },
            "revision" : {
              "format" : "uint64",
              "type" : "integer"
            },
            "tags" : {
              "items" : {
                "type" : "string"
              },
              "type" : "array"
            },
            "timeslots" : {
              "type" : "string"
            },
            "tracking" : {
              "$ref" : "#/components/schemas/TrackingItem"
            },
            "translation" : {
              "$ref" : "#/components/schemas/TranslationItemBase"
            },
            "visitConnectUrl" : {
              "type" : "string"
            },
            "visitDiscoverUrl" : {
              "type" : "string"
            }
          },
          "type" : "object"
        } ]
      },
      "VisitorFavoriteType" : {
        "enum" : [ "content", "activity" ],
        "type" : "string"
      },
      "WebhookItem" : {
        "properties" : {
          "enabled" : {
            "type" : "boolean"
          },
          "errorCount" : {
            "format" : "uint8",
            "type" : "integer"
          },
          "id" : {
            "type" : "string"
          },
          "lastRevision" : {
            "format" : "uint64",
            "type" : "integer"
          },
          "log" : {
            "items" : {
              "$ref" : "#/components/schemas/WebhookLogItem"
            },
            "type" : "array"
          },
          "sentTime" : {
            "type" : "string"
          },
          "state" : {
            "$ref" : "#/components/schemas/WebhookStateType"
          },
          "type" : {
            "$ref" : "#/components/schemas/WebhookType"
          },
          "url" : {
            "maxLength" : 1000,
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "WebhookLogItem" : {
        "properties" : {
          "duration" : {
            "format" : "uint32",
            "type" : "integer"
          },
          "httpStatus" : {
            "format" : "uint16",
            "type" : "integer"
          },
          "sentTime" : {
            "type" : "string"
          },
          "url" : {
            "type" : "string"
          }
        },
        "type" : "object"
      },
      "WebhookStateType" : {
        "enum" : [ "wait", "sent", "error" ],
        "type" : "string"
      },
      "WebhookType" : {
        "enum" : [ "visitor", "partner", "participant", "action", "connection", "content", "order", "payment", "activity" ],
        "type" : "string"
      }
    }
  }
}
