An Azure service for ingesting, preparing, and transforming data at scale.
Hi WerciaS,
It looks like you’re almost there, but the Web activity isn’t formatting your token request quite the way UiPath’s OAuth endpoint expects. ADF’s Web activity with “Authentication: None” will let you roll your own client-credentials call, but you need to:
Use properly URL-encoded body parameters • In the Body textbox make sure you use ampersands (&) between each key/value pair, for example:
grant_type=client_credentials&client_id=<your-app-id>&client_secret=<your-secret>&scope=default
• If UiPath requires a resource or specific scope value, swap out scope=default for whatever their docs list (e.g. scope=api://…/user_impersonation).
- Point to the correct UiPath token endpoint • Verify you’re hitting the right URL – UiPath recently standardized on: https://account.uipath.com/oauth/token or,
depending on your region, https://cloud.uipath.com/identity_/connect/token
• Double-check the casing and path, and include any required query string (tenant, organization, etc.) if their docs show it. - Set headers for a form-post • In Headers add: Content-Type → application/x-www-form-urlencoded
• (You can also addAccept: application/jsonif you’re parsing JSON.)
Pull your secrets from Key Vault (optional but recommended) • Use a Lookup or Get Metadata activity to fetch the client secret from Azure Key Vault rather than hard-coding it.
Once the Web activity returns an { "access_token": "…" } payload, feed that into your subsequent UiPath API calls by setting the Authorization: Bearer @{activity('Web1').output.access_token} header.
Hope that gets you past error 2108! If you still see issues, here are a few follow-ups that can help us drill in deeper:
• Which exact URL (including query string) are you calling?
• Does your UiPath application registration have the correct “API Access → Applications” roles assigned?
• Are you seeing a more detailed error message in the Web activity output (e.g. invalid_client or invalid_scope)?
• Have you tried the same call in Postman or curl to rule out ADF formatting?
Reference docs
• Web Activity – control-flow-web-activity https://learn.microsoft.com/azure/data-factory/control-flow-web-activity
• Troubleshooting Access Token Generation in ADF https://support.microsoft.com/azure-data-factory-access-token-issues
• Service Principal Authentication in ADF v2 https://learn.microsoft.com/fabric/data-factory/service-principals
I hope this helps. If you have any questions or concerns, please let us know we're happy to assist further.