We are writing a scheduled task policy to retrieve all OAuth clients from the API Gateway database. However we cannot find the right way to retrieve this information. We are trying to use the "OTK Client Get" assertion, however this assertion only returns the first 100 clients from the database. We do not seem to find a robust way to retrieve all the clients in case there are more than 100 client in the database. There seems to be no while loop mechanism in the assertions with which we can loop over all the clients with the offset. Currently we directly use a JDBC assertion on the OAuth database, but we are afraid that a future update of the Gateway can change this behavior.
Have you considered using the clientstore API?
Clientstore API - CA API Management OAuth Toolkit - 3.6 - CA Technologies Documentation
Yes we did, but the get_all_client method also returns only 100 clients at a time. In fact I think the "OTK Client Get" assertion uses this API under the hood for some cases.
So this does not seem a solution.
You are correct. I think the JDBC assertion you are currently using may be the best bet.
We have the limit of hardcoded in our JDBC queries to the OTK database. I would not recommended making any changes to those but rather implement your own solution if you need to avoid using offsets for the total results.