Search code examples
ruby-on-railsyodlee

"Exception Occurred" with addSiteAccount1


After having gotten a site's login form from getSiteLoginForm, I'm attempting to add a site, but I'm receiving

{ :errorOccurred=>"true", :exceptionType=>"Exception Occurred", :referenceCode=>"_fa9ede97-1792-45ca-b147-005ec4002d33" }

The URL I'm POSTing to (in Rails) is: https://consolidatedsdk.yodlee.com/yodsoap/srest/private-fairshare/v1.0/jsonsdk/SiteAccountManagement/addSiteAccount1

and this is the POST data:

cobSessionToken=REDACTED userSessionToken=REDACTED siteId=11671 credentialFields.enclosedType=com.yodlee.common.FieldInfoSingle credentialFields[0][displayName]=User Name credentialFields[0][fieldType.typeName]=TEXT credentialFields[0][isEditable]=true credentialFields[0][name]=LOGIN credentialFields[0][value]=testuser credentialFields[0][valueIdentifier]=LOGIN credentialFields[0][valueMask]=LOGIN_FIELD credentialFields[1][displayName]=Password credentialFields[1][fieldType.typeName]=IF_PASSWORD credentialFields[1][isEditable]=true credentialFields[1][name]=PASSWORD credentialFields[1][value]=testpass credentialFields[1][valueIdentifier]=PASSWORD credentialFields[1][valueMask]=LOGIN_FIELD

I've triple checked the parameters, and they seem to match up with the documentation.

Is there something I'm missing?


Solution

  • Looking at the documentation it looks like there's a mismatch in the format of your parameters.

    For example, you have the field credentialFields[0][displayName], but in the documentation it's referred to as credentialFields[0].displayName. Is is possible that the API expects fields in this format?

    If the API does expect fields in the credentialFields[0][displayName] then it would make sense for the credentialFields.enclosedType field to follow the same format. In that case it should be credentialFields[enclosedType].