Appscan Hooks

Webhooks that push information about app scan events to your configured target URL.

POSTRequest to webhook target URL

App Scan Created

Pushes information about a scan that was saved. That may either be triggered by the Companion app or a third party that uses the API to create app scans.

Event type

app_scan_created

Target URL

Defined when subscribing.



Submitted Values

JSON object containing the following information:

  • Name
    scanStatus
    Type
    integer
    (mandatory)
    Description
    • 0 means the pass was known and has been voided after it has been scanned.
    • 1 means the pass was known but it has already been voided and is therefore not valid.
    • 2 means the pass was known and the attendance of a user has been saved.
    • 3 means the pass hasn't been found which happens if an invalid barcode is scanned. This can happen e.g. if you've deleted passes or a barcode value that is invalid in general has been scanned.
    • 4 means the pass has been checked in successfully.
    • 5 means the pass has already been checked in before.
    • 6 means the pass has been checked out successfully.
    • 7 means the pass is not checked in and therefore cannot be checked out.
  • Name
    createdOn
    Type
    string
    (mandatory)
    Description

    The date when the scan happened.

  • Name
    createdOnUtc
    Type
    string
    (mandatory)
    Description

    The date when the scan happened - converted to UTC.

  • Name
    passId
    Type
    string
    (mandatory)
    Description

    The UUID of the pass that was scanned. null if the pass couldn't be found.

  • Name
    passGeneratedId
    Type
    string
    (mandatory)
    Description

    The auto generated id of the pass that was scanned.

  • Name
    passSearchString
    Type
    string
    (mandatory)
    Description

    The search string of the pass that contains the individual data of the pass.

  • Name
    passVoided
    Type
    string
    (mandatory)
    Description

    Whether the pass is voided

  • Name
    passUserProvidedId
    Type
    string
    (mandatory)
    Description

    The user provided id of the pass if there is one.

  • Name
    passTemplateGuid
    Type
    string
    (mandatory)
    Description

    The UUID/GUID of the pass' template.

  • Name
    passTemplateName
    Type
    string
    (mandatory)
    Description

    The name of the pass' template.

  • Name
    appConfigurationId
    Type
    string
    (mandatory)
    Description

    The identifier of the configuration that was used when the scan happened.

  • Name
    scannedBarcodeValue
    Type
    string
    (mandatory)
    Description

    The barcode value that has been scanned. If this is an NFC pass this field contains the value that has been transferred via NFC.

  • Name
    appScanId
    Type
    string
    (mandatory)
    Description

    The unique id of the app scan.

  • Name
    deviceName
    Type
    string
    (mandatory)
    Description

    The device name of the device that was used to scan.

  • Name
    additionalPropertiesScan
    Type
    object
    (mandatory)
    Description

    If the configuration has additional properties defined, this will contain an array of key-value pairs. The key is the name of the property, the value is - as you guessed - the value.

  • Name
    additionalPropertiesPass
    Type
    object
    (mandatory)
    Description

    If the pass has additional properties, this array will contain key-value pairs. The key is the ID of the additional property, the value is the actual value.

Example Payload

Webhook POST request body

{
  "scanStatus": 2,
  "createdOn": "2020-06-12 14:12:10",
  "createdOnUtc": "2020-06-12 12:12:10",
  "passId": "bdaa2cbd-3190-46a5-825c-e2879f5f78b2",
  "passGeneratedId": "jhszixq86cx2yhBV",
  "passSearchString": "my|data|here",
  "passVoided": "false",
  "passUserProvidedId": "",
  "passTemplateGuid": "ae48a05e-b689-4b8d-a3dc-055b963cb976",
  "passTemplateName": "My template",
  "appConfigurationId": "34567890-3eda-1235-99df-28e1047fcefa",
  "scannedBarcodeValue": "example-value",
  "appScanId": "123456-d532-4a80-a463-82ba58eb40a1",
  "deviceName": "My iPhone",
  "additionalPropertiesScan": {
    "Are you happy?": "true"
  },
  "additionalPropertiesPass": {
    "5cb1a40ac68f80.15012600": "My name",
    "5eaa7fe918b372.44429907": "My lastname"
  }
}