Using Power Automate Connector action vs Using SKY Add-in Send HTTP

Hi,

I recently created a constituent custom tile using Adaptive Card where I display the constituent cash giving (direct and soft credit) and uses that to determine Giving Society membership, all is working well until I open it up. It was going at about 10 requests per minutes.

In the flow, I have a “get a cosntituent” action using the Blackbaud Constituents connector. This quickly started to fail with:

{

"error": {

"code": "BadRequest",

"message": "Http request failed as there is an error: 'A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. (flow-apim-unitedstates-002-westus-01.azure-apim.net:443)'."

}

}

When I changed the action to instead use the Blackbaud SKY Add-in action for Send HTTP request, there is no longer any issues.

I have a feeling that the Blackbaud connector action goes a different path to the server than the Send HTTP request action and is less “limiting”.

@Ben Wong @Erik Leaver @Heather McLean can one of you confirm this?

Comments

  • Alex Wong
    Alex Wong Community All-Star
    Tenth Anniversary Kudos 5 Facilitator 4 bbcon 2025 Attendee Badge

    Note that it isn't 2 minutes limit that normally exists for power automate:

    c479e67a4bc1a2c1318e797c435f8223-huge-im

    the error happens after 21seconds

  • @Alex Wong How are you getting the adaptive card to display soft credits? Are you using Query instead of the Get Gifts action, which doesn't pull soft credits?

  • Alex Wong
    Alex Wong Community All-Star
    Tenth Anniversary Kudos 5 Facilitator 4 bbcon 2025 Attendee Badge

    @Ryan Carr
    I don't use gift list api endpoint.

    I have Azure data warehouse that I have all gift records in, which then I can use SQL to gather all gifts direct and soft.

    if not data warehouse, you can also use Query API, you can query on both direct and soft credit this way.

  • This is an old thread I know, but in case it helps I can shed some light on this...

    The official certified Power Platform connectors are built atop the SKY API, and thus the connector actions are leveraging the exact same endpoints that you can see and use within the SKY Developer portal API Reference. This includes the Send HTTP Request action from the Blackbaud SKY Add-ins connector, which just dynamically composes the request to send to the SKY API based on the values supplied in the connection action designer.

    The Power Platform connectors are low/no code tools that are user/citizen developer-facing. This means those users don't need a SKY Developer account and API subscription key - they simply authorize the connection within Power Platform. Under the hood, the connectors call the same API endpoints but use a 1st-party (Blackbaud) API key that distinguishes the calls from true 3rd-party (external developer) calls. This is an internal implementation detail of the connectors and the SKY API, not something available to external developers.

    This allows the certified connectors to use a different API throttling heuristic than what is used for SKY API developers (both Partner and non-Partner). There is no quota and the rate-limit logic is expressed differently. With respect to rate-limits (# calls per short unit of time), there are throttles on the Microsoft side (for the connector "service") as well as throttles on the Blackbaud side (at the SKY API).

    The Send HTTP Request action has to compose the SKY API request to send based on the values entered in the designer - that means the connector does a few steps (internally) before calling the SKY API. So it's likely to take a few extra ms between calls, but I'd be surprised if it were noticeable. It's hard to measure perception over the wire like this due to the many factors that can influence API call response times.

    (btw - you can see the implementation of the Send HTTP Request action here ?)

    Alex - it's admittedly hard to tell, but I suspect your issue from Feb 2024 may have been something else. Not necessarily related to SKY API rate-limits, but something else on the Microsoft side (maybe a Power Automate rate-limit, not sure). If a SKY API rate-limit were encountered, the response (sent back to Power Automate) would be a 429 with Retry-After specified and I think you'd see that in the flow-run details (actually, I think Power Automate might even handle throttled responses and implement its own delay before failing the flow).

    More info on how SKY API request throttling is handled here:

    https://github.com/microsoft/PowerPlatformConnectors/blob/dev/certified-connectors/Blackbaud SKY Add-ins/script.csx

  • Alex Wong
    Alex Wong Community All-Star
    Tenth Anniversary Kudos 5 Facilitator 4 bbcon 2025 Attendee Badge

    @Ben Lambert
    Thank you, good to know. No wonder my api quota doesn't seems to go up

Categories