swagger: '2.0'
info:
title: Test Connector
description: testdescription testdescription testdescription
version: '1.0'
host: graph.microsoft.com
basePath: /v1.0/
schemes:
- https
consumes: []
produces: []
paths: {}
definitions: {}
parameters: {}
responses: {}
securityDefinitions:
oauth2-auth:
type: oauth2
flow: accessCode
tokenUrl: https://login.windows.net/common/oauth2/authorize
scopes: {}
authorizationUrl: https://login.microsoftonline.com/common/oauth2/authorize
oAuthClientCredentials:
type: oauth2
flow: application
tokenUrl: https://login.windows.net/common/oauth2/authorize
scopes: {}
certOauth:
type: oauth2
flow: application
tokenUrl: https://login.windows.net/common/oauth2/authorize
scopes: {} (or, what also doesn't work is using User.Read or the relevant required API.permissions)
security:
- oauth2-auth: []
- oAuthClientCredentials: []
- certOauth: []
tags: []
I'm replying to this post as well, as I'm experiencing the same issue with service principal authentication.
I've been having this issue for two weeks and still haven't found a solution. There are a few other posts about this. The workaround suggested in other search results, which consists of creating the connection from Power Automate, doesn't work for me.
swagger: '2.0'
info:
title: Test Connector
description: testdescription
version: '1.0'
host: graph.microsoft.com
basePath: /v1.0/
schemes:
- https
consumes: []
produces: []
paths: {}
definitions: {}
parameters: {}
responses: {}
securityDefinitions:
oauth2-auth:
type: oauth2
flow: accessCode
tokenUrl: https://login.windows.net/common/oauth2/authorize
scopes: {}
authorizationUrl: https://login.microsoftonline.com/common/oauth2/authorize
oAuthClientCredentials:
type: oauth2
flow: application
tokenUrl: https://login.windows.net/common/oauth2/authorize
scopes: {}
certOauth:
type: oauth2
flow: application
tokenUrl: https://login.windows.net/common/oauth2/authorize
scopes: {}
security:
- oauth2-auth: []
- oAuthClientCredentials: []
- certOauth: []
tags: []
Notably, a connection to our API can be established using a standard HTTP request. This works both from Postman—by configuring a token using the same settings (grant type: client credentials, access token URL: https://login.microsoftonline.com/my-tenant-id/oauth2/v2.0/token client ID, client secret, scope: https://login.microsoftonline.com/my-tenant-id/oauth2/v2.0/token)—and from the Power Automate environment (i.e., using a standard HTTP request instead of setting up a custom connector based on polling).
So, it is possible to communicate with the API through these alternative methods.
It is maybe also noteworthy that a user-based connection can be successfully established when creating a custom connector, and that this connection allows for successful requests to the Business Central API.
Does that give any clues? Would using this swagger code work for you, or does it give the same error?
Tomac
986
Moderator
stampcoin
699
Super User 2025 Season 2
Riyaz_riz11
577
Super User 2025 Season 2