u/itzmecoder

Custom Connector with Dataverse: Lookup fields work in Test Page, but failing to save from Canvas App. Anyone faced this?

Hey everyone,

I’m running into a frustrating issue with a custom connector I built for the Dataverse API, specifically around patching/saving Lookup fields.

Here is the situation:

The Setup: I have a Canvas App where users submit data via this custom connector.

What works: All standard fields (Text, Choice, Numbers, etc.) save perfectly fine from the Canvas App. Furthermore, when I test the custom connector directly from the Connector Test Page using the raw JSON payload, the Lookup field updates successfully!

The Problem: When I trigger the exact same connection/action inside the Canvas App, the Lookup field completely fails to populate or save, while the rest of the fields go through.

Inside Dataverse, lookups usually expect the OData bind syntax, something like:

"column_name@odata.bind": "/entity_plural_name(GUID)"

Since it works perfectly in the test harness but fails in the app, I suspect the Canvas App is either stripping out the @odata.bind notation from the record object or formatting the GUID string in a way that Dataverse rejects on the fly.

Has anyone faced this specific discrepancy between the test page and Canvas App execution? How did you format your payload or collection inside Power Fx to force the Canvas App to pass the lookup correctly to the custom connector?

Any insights or workarounds would be massively appreciated!

reddit.com
u/itzmecoder — 4 days ago