Empty body when using two update operations in WebServices-connector

Hi all,

I’m implementing a WebServices-connector for a target system with multiple account endpoints. Example:

  • Endpoint 1: Personal Information (/person)

  • Endpoint 2: Contract information (/person/contract)

This means that I need two update statements if I want to sync both personal and contact information. This pickle is that when an attribute for only one of the two endpoints needs to be updated/synced, IDN still sends two requests. One of the requests will have an empty body because there are no attributes to be updated. This results in an 400 error from the endpoint that does not need to updated and it results in errors in the IDN logs (provisioning overview, events, etc.). Is there any way to solve this without creating an additional source? I’d rather not create an additional source for the mere purpose of syncing contract information.

Best regards,

Thijmen

A before provisioning rule might allow you to inspect the payloads and not send if there is nothing in the payload.

Alternatively, you might check out the new SaaS Connectivity Framework, which makes creating web service connectors MUCH easier while giving you far more control over how it works. I highly recommend it for anyone building web service connectors.

Thanks for the pointer Colin, I resolved it by checking the request body in the before provisioning rule. If it’s empty, I simply add an empty json body {} to ensure the request is executed successfully.

I will look into the SaaS Connectivity framework. At first glance it appears to be a lot more work and error prone due to the programming/TypeScript skills required. But it may offer a lot more flexibility as well.