Getting Started

This is an introduction to our DataQuality Webhook API. With the DataQuality Webhook API you can connect CRM systems for which we do not yet have a special integration to snapADDY. This can be a practical solution for custom or inhouse CRM systems. With our API you can transfer grabbed data to your CRM system.

For working with this API it is assumed that all received and sent data represents valid JSON strings. Please make sure that the corresponding HTTP headers Content-Type and Accept are set accordingly.

Assuming you have already set up a working URI, you simply tell snapADDY DataQuality where to send the contact data. This is done by setting your URI in the settings as shown below. This is done in the DataQuality.

img

Alternatively, you can globally set your snapADDY API settings in your organization settings. This has the advantage that all your DataQuality instances are automatically configured. Additionally, it allows you to specify further webhook settings, such as an authorization header in case your endpoint is secured. The string value you configure is passed as a Authorization: <value> HTTP header.

The picture below shows the global snapADDY API settings.

img

When an address has been grabbed while the API is activated, a JSON object containing the grabbed data will be sent as a POST request to a given URL. You need to implement the HTTP interface in your own system in order to further process the data.

Below you can see an example of POST data that are sent via the API:

{
  "city": "Würzburg",
  "country": "Deutschland",
  "email": "info@snapaddy.com",
  "fax": "+4993146621219",
  "firstName": "Jochen",
  "gender": 0,
  "image": "",
  "lastName": "Seelig",
  "mobile": "+4961966525375",
  "organization": "snapADDY GmbH",
  "phone": "+4993146621201",
  "position": "Geschäftsführer",
  "xing": "https://www.xing.com/profile/Sebastian_Metzger11",
  "linkedin": "https://www.linkedin.com/in/sebastian-metzger-a8b58634/",
  "state": "",
  "street": "Juliuspromenade 3",
  "title": "",
  "website": "https://snapaddy.com",
  "zip": "97070",
  "vat": "DE815576732",
  "created": "2017-03-17T09:32:13.673Z",
  "createdBy": "s.metzger@snapaddy.com",
  "createdTimestamp": 1489743133673,
  "bcImage": "",
  "bcImageBackside": ""
}

Most properties should be self-explanatory. However, here are some more details:

  • the property gender can have different values:
    • -1 (unknown)
    • 0 (male)
    • 1 (female)
  • the abbreviations in the properties country and state follow the ISO-3166 standard
  • image properties (image, bcImage and bcImageBackside) are considered legacy and are kept only for backward compatibility; their value is always an empty string

Handling Exports

After your web handler has received some exported data, you can also respond to the snapADDY DataQuality's request. In case of success, you can return with HTTP status code 200 and a callback URI, which will be opened by the DataQuality instance that made the original request. This can be done by replying with the following data.

{
  "callbackUrl": "http://example.com"
}

You can also respond with an error and a corresponding HTTP error code to signal the snapADDY DataQuality instance that some error occurred or the sent data is not processable. For example, providing the HTTP status code 400 and the following response body let's you provide a custom error message. This error message will then be shown in the respective snapADDY DataQuality instance.

{
  "message": "My custom error message"
}

Further Help

In case you need more information, please contact our support team.