I'm trying to figure out the best way to deal with the Rate Limits. I am developing a Webservice that will use the Podio API to run custom workflows (which pull in information from 3rd party apps). This webservice will be available to many customers. My service will be react to the hooks when users Add new Items or update certain fields. Additionally, these customers will be Importing (1000's of records) at random times. This mass creation of items is going to completely bust my rate limit because hooks will be fired for each created item.
I know one of the strategies is to queue the hooks in a database and then slow down the api calls to not run into the rate limits. While this would work for some of the workflows, most of them are required to run ASAP. My users can't wait 15+ minutes before the Flow is run.
At this point my biggest worry is the importing of items. So I am testing out a system where I have the users upload the records to my database first. I then will throttle the adding of those records to their apps. This will work to the extent that I can make sure there is always a set amount of rate-limit left...I think.
Doing it this way though I'll be using the Create API call to add records. I will actually need to make 3 API calls per imported item because I need to create an item for 3 different Apps...Lead, Property and Contact. If I used the importer this can be taken care of in 1 api call I believe, however I would not be able to throttle the use of the importer.
I'm looking to find out what the best way to handle the API Rate Limit? How have some of you handled this?
Another question. Is the importer's rate limit tied to the "rate-limited" total of other "rate-limited" api-calls like Create? Or do they come out of a separate pool. My understanding is that they come out of the same pool of 1000/hr.
Thanks so much!