Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

FieldDescription
TBDTimestamp in format "TBD" of when the event has originally happened
profileType

The profile type for which this notification is sent:

  • TRAVELLER
  • CORPORATE
event

The notification type:

  • CREATE
  • UPDATE
  • DELETE
uuidThe Umbrella Faces UUID of the affected profile
company.uuidFor profileType TRAVELLER only: UUID of the company currently associated with the traveler profile.

 

Message authentication

 

Each Webhook invocation will include the custom header "X-FacesWebhookSignature", which consist of the request body hashed using HMAC-SHA256 with the secret configured during Webhook setup in hex format.

Example: Using the above payload and secret S3cret! one would compute a hash value of TBD

 Delivery

Payloads are delivered via HTTPS POST only. Each notification will be transmitted with an individual POST request without applying any batching logic.

...

In case of an error Umbrella Faces will attempt to re-deliver the the notification up to TBD times with a delay of TBD between calls before silently discarding the notification.

Managing Webhooks

Weebhooks Webhooks are managed in a self-service fashion via the following set of APIs.

Note

Each create / update triggers an immediate "PING" notification to the configured endpoint, and will only be accepted if the PING is succesful

Search / List Webhooks 

Endpointapi/v1/configuration/webhooks
Request methodGET

Allows searching through a paged list of active Webhook subscriptions for the calling application.

Parameters
Name
Description
Validation
qFreetext query for finding webhooksRequired parameter
pageCurrent page within the result set, starts at 0Optional, number >= 0
pageSizeMaximum number of results per page. Default 10Optional, number > 0 and <= 100
Code Block
languagebash
titleExample request
curl -v -H "Authorization: Bearer <token>" \
    "https://hurricane.umbrellanet.ch/uf-test/api/v1/configuration/webhooks?q=&page=0&pageSize=10"
Code Block
languagejs
titleExample response
collapsetrue
{
    "moreResults": false,
    "results": [
        {
            "uuid": "56b19ace-1fa9-4346-a97c-f621c5138342",
            "name": "My Example Webhook",
            "profileTypes": [
                "TRAVELLER",
                "CORPORATE"
            ],
            "eventTypes": [
                "CREATE",
                "UPDATE",
                "DELETE"
            ],
            "url": "https://my.example.com/webhook/notify"
        }
    ]
} 

Create new Webhook

Endpointapi/v1/configuration/webhook
Request methodPOST

Register a new Webhook subscription

Code Block
languagebash
titleExample request
curl TBD
Code Block
languagejs
titleExample response
collapsetrue
{
    "uuid": "c7c769bc-9310-4b29-b27c-f34355ec66b4",
    "name": "Notify myIntegrationX",
    "profileTypes": [
        "TRAVELLER",
        "CORPORATE"
    ],
    "eventTypes": [
        "CREATE",
        "UPDATE",
        "DELETE"
    ],
    "url": "https://my.example.com/webhook/notify"
}

 

Update existing Webhook

Endpointapi/v1/configuration/webhook/<uuid>
Request methodPATCH

Modify Webhook subscription

Parameters
Name
Description
Validation
<uuid>The UUID of the subscription to be modifiedRequired parameter
Code Block
languagebash
titleExample request
curl TBD
Code Block
languagejs
titleExample response
collapsetrue
{
    "uuid": "c7c769bc-9310-4b29-b27c-f34355ec66b4",
    "name": "Notify myIntegrationX",
    "profileTypes": [
        "TRAVELLER",
        "CORPORATE"
    ],
    "eventTypes": [
        "CREATE",
        "DELETE"
    ],
    "url": "https://my.example.com/webhook/notify"
}

Delete Webhook

Endpointapi/v1/configuration/webhook/<uuid>
Request methodDELETE

Remove Webhook subscription

Parameters
Name
Description
Validation
<uuid>The UUID of the subscription to be deletedRequired parameter
Code Block
languagebash
titleExample request
curl -v -X DELETE \
    -H "Authorization: Bearer <token>" \
    https://hurricane.umbrellanet.ch/uf-test/api/v1/configuration/webhook/c7c769bc-9310-4b29-b27c-f34355ec66b4