Accessing Integration Settings

  1. Select Sites from the side-menu.

2. Select the Site you wish to integrate.

3. Select the Integrations tab at the bottom of the sidebar

4. The Integrations page will appear. When you have no integrations configured, it will appear the same as the picture below:

Adding a WebHook

Click on the + on WebHook under Available Integrations. The Add a new WebHookmodal will appear.

Note: If you need more information on webhooks, either click on the ‘?’ button in the top-right of the modal or read the information provided below


  • Name: Used to identify the integration on rejected passes and the integrations page.
  • External ID: This field can be used to match up sites in the external system.
  • URL: The publicly accessible endpoint that Sine will call out to. We recommend using HTTPS.
  • API Key: Provide an identifier that Sine will pass through in the x-sine-auth header on requests. Use this key to verify that requests are coming from Sine.
  • Rejection Message: Users may set a rejection message in the case that the check-in attempt was unsuccessful. This will display on the iPad in the case that their details do not correspond to the WebHook server, preventing them from checking in. Customize this message from the Rejection message box from the Configuration page.(Optional): You can leave this field blank to display the default rejection message that your web-hook returns (for example, “You have been rejected by a Sine service.”). Alternatively, you can insert “%EXTERNAL_REJECTION_MESSAGE%” into the message, and the web-hook will automatically replace this with your default rejection message. An example of this is “%EXTERNAL_REJECTION_MESSAGE% Please ring for assistance” which will display something along the lines of “You have been rejected by a Sine service. Please ring for assistance“
  • Visitor Types: Select the desired visitor types that you want to capture events for. An example would be ‘Contractor’ only if using this WebHook for inductions.
  • Event: Select at least one event that you want this integration to run.
    No event type is reliant on another event type.
    Check-in Request Triggered before a Pass is created. Allows the integration to reject a pass with a rejection message or optionally add additional information to accepted passes. This is normally the most useful event for integrations.
    Check-in Success: Triggered after a pass has successfully been created. An integration can not mutate a pass off this event. This event will include answers to any entry forms configured on the site.
    Check-out Success: Triggered when a pass is checked out or expires. An integration cannot mutate a pass off this event. This event will include answers to any exit forms configured on the site.
  • Status: whether the integration is active or not.

Request Specification

The following applies to all events:

  • Request will always be a POST.
  • Request will be application/json.
  • Responses must be application/json.
  • Responses must be a 200.
  • Sine is a cloud based service running on AWS. Integration endpoints must be open to the internet and use the x-sine-auth header for authentication.

The following applies to the Check-in Request event:

  • Request Format
  • Rejected Response Format
  • Success Response Format
  • This is a real time integration, the check-in process will be interrupted until the integration request has received a response.
  • If the response to the integration request is anything other than a 200 the check-in process will be aborted.

The following applies to the Check-in Success event:

  • Request Format

The following applies to the Check-out Success event:

  • Request Format

IP Ranges

Requests will come from the following addresses:

Did this answer your question?