Authorization code limits / batch requests

Hello,

I'm curious about batch requests of access tokens, and/ or rate limits on that.

Specifically, when integrating with Blackbaud checkout, I'd like to already have an access code ready to go that I can pull from my database rather than having to make a request for the access code that the user has to wait on before I can make the post checkout transaction call here:


Can anyone help me out?

Thanks,

Lauren

Comments

  • @Lauren White Thank you for your question about authorization. You should be able to read about our different authorization options here. It is quite likely you would want to take advantage of our confidential application authorization flow.

    Currently there is no batch functionality for refreshing tokens. How often do you plan on calling the OAuth service to refresh access tokens? After authorization, the access token should be good for 1 hour and can be refreshed without user interaction. Generally the call to get a new access token is subsecond.

  • @Daniel Leonard ah so the call to get this authorization token takes less than 1 second generally?

    Authorization

    Property is required

    stringOAuth 2.0 access token obtained from Blackbaud OAuth 2.0 Service. Supported grant types: Authorization code.
  • @Daniel Leonard do you happen to know on average how long the createCheckoutTransaction post takes? I'm generally exploring ways to expedite our user experience with our Blackbaud integration. It seems like this one takes a while for us.


  • @Lauren White After the initial authorization, you would have already exchanged the authorization code for an access/refresh token, so you would be calling the `/token` route to exchange the refresh token for a new access and refresh token. You would then store the new refresh token and start using the new access token to make API calls for around one hour. Each time you get a refresh token, it is valid for one year from when it was issued.

    Yes, the call to refresh an access token has less than 200ms response times on average .

    @Mina Mistry may be able to help with analytics from the payment API.

  • Mina Mistry
    Mina Mistry Blackbaud Employee
    Seventh Anniversary Kudos 2 Name Dropper Participant

    Hi @Lauren White - on average the Checkout transaction endpoint will be about 2.9s to process the transaction.

  • @Lauren White My suggestion is to create a “micro-service” in the background (i.e. an Azure Function) that refreshes the Auth Token for you every 55 minutes (or so). That way you don't need to worry about handling it at checkout b/c you can assume its good to go already. ?

  • @Bob Rowe thanks for your response! That sounds like a solid approach too.

  • @Mina Mistry thanks for that information!

  • @Daniel Leonard thanks, this is all very helpful information. I appreciate it.