Azure / Azure-DataFactory

Other
485 stars 592 forks source link

ADF v2 - Copy From REST API into a BLOB #82

Closed AlverezYari closed 3 years ago

AlverezYari commented 5 years ago

I've been trying to get the REST API source connector working for the better part of week now and but I keep getting stuck on how to drop off the REST Body response as as json file into a Blob as a sink. I've worked through the passing the bearer token and getting a response back, successfully but then I get stuck trying to extract the body response JSON from the return call. There are so many options of how to set this up and really no hard concrete examples of how to pull out and format the JSON correctly so that the blob accepts it.

Here is the error I continue to get and need help working through...

age": "Failure happened on 'Source' side. ErrorCode=UserErrorInvalidValueInPayload,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=Failed to convert the value in 'requestBody' property to 'System.String' type. Please make sure the payload structure and value are correct.,Source=Microsoft.DataTransfer.DataContracts,''Type=System.InvalidCastException,Message=Object must implement IConvertible.,Source=mscorlib,'", "failureType": "UserError", "target": "Copy Data1" }

From what I can find this is caused by the BLOB sink settings, and I think because its trying to convert the whole response call into JSON, vs just the body where the targeted data resides. Any insights or help would be appreciated!

AxlPr commented 5 years ago

I had a similar issue taking the output from a Lookup activity and passing it into the request body that was being used as a Sink for a Copy activity. I needed to convert it to a string in order to get the REST API call to work, i.e.

@{activity('Lookup Activty').output.value}

Note the { and } around the activity. The Lookup activity returns an Array object so you need to convert it to a string.

AlverezYari commented 5 years ago

Thanks for the info. We'd already moved on to using logic apps triggered by the factory to resolve this but nice to know it is actually possible to do.

venkatmexico commented 2 years ago

@AlverezYari ,

i am getting below error while doing copy activity from xero to json sink

OdbcException,Message=ERROR [HY000] [Microsoft][Support] (50090) Conversion from string to number failed with value '',Source=XeroODBC_sb64.dll,'

Can you check on this and revert me with the resolustion ?