Insert records in Data Entity through External App using Data Service API

Hi UiPath community,

We need to insert record from a third party into our Data Service and we were hoping to provide them with an Data Service API endpoint for them to use and send data. When trying to create an external App for this we noticed that Data Serive API resource had only user scope scopes. We found a workaround proposed by UiPath, create the an scopeless App, then go to manage access in our Data Service and grant “Write” access to that App, but doing this we can’t get an access token for the App.

We’re getting: {“error”: “You are not authenticated to access Data Service. Make sure your Assistant or Robot is connected to a modern folder in your account.”, “traceId”: “…”} when POSTing to UiPath.

  • External App: External_App (in new modern folder DataServiceFolder, OR.Execution scope, this scope let us get an access_token but it seems insuficient for wrioting into Data Services).
  • Role: “Writer” and all permissions assigned in Data Service > Manage Access.

Token generated with client_credentials, but error persists. Questions:

  • Is OR.Execution insufficient for Data Service API access?
  • Does the app need a specific Data Service API Application scope (none available in our tenant, only user scope)?
  • Any tenant config or API version issue blocking this?
  • Confirm correct endpoint: /api/EntityService/{entity}/insert?

Thanks,
Sebastian Crohare

@Sebastian_Crohare

With blank scope it might not work and yes user scope is needed for data service insert

one workaround you can use it to create a process and expose the process as api to external user and in the process add the data to data service…to expose you have orchestrator api start job

cheers

Hi @Anil_G , thanks for your response!

I can confirm now that indeed it doesn’t work. I tried other scopes so I could receive an access token but it then fail writing to the data service as the scope I used didn’t have the necessary permission.

UiPath support proposed something similar, but what I was trying to avoid was the need of an additional development, but it seems I’ll have to work with that.

Thanks for your recommendation on the approach to solve this.

Cheers!

1 Like