I’m not sure if this is a bug or not, so I thought I’d just post it here instead as a starting point.
We have built a pretty extensive time management system in Tape and it’s working awesome. Every user gets a time sheet, a time card for every day within that 14 day period, and then they log time entries for what they’re working again, and with the power of Tape’s calculation field, everything is rolled up into nice neat little summaries.
One of the main features of this system is that we’re using record permissions all the way. Essentially, NOBODY has access to these three apps. Instead, when a time sheet is created, we share it with that user, as well as all time cards and all time entries once they’ve been created, so the user will have perfect views in these three apps of only THEIR records. Again, all working great.
We were just testing it out amongst one or two employees and we basically launched it last week. This means we have about 15 time sheets on the go right now which equates to about 210 time cards. Our workflow process is to use a single relationship field to select the employees, create a time sheet for each one, fire additional workflows to create a set of time cards, and use the bulk API permissions tool to set all the permissions of every new item.
However, I just noticed a problem. On our second run of timesheet/time card creation, we hit API limit errors. They’re based on the use of the bulk permissions tool so the work is being done within an Execute Script function. I’m not sure if this is because I’m setting an API key for a specific user (which seems to be a requirement to make this API call work) and therefore overwriting the normal API routines that might take place.
There is almost never a situation inside PWA where you hit rate limits. You get 5M actions per month (just like Tape) and as long as you don’t go absolutely super crazy, I’ve never seen a rate limit problem ever. I’ve done 10K imports of new items, workflows take forever to run but they eventually run and never produce rate limit errors. I wanted to make a recommendation for Tape to consider removing all rate limits (or making them astronomically high) from the Automation tool and from the use of the API SDK inside an Execute Script function. If Tape is going to be an enterprise level application, it needs the ability to do more than this. I’m only creating 200 items and hitting rate limits already? How is the system possibly going to function when it’s 100 employees, 100 time sheets and 1400 time cards a week? It would be incredibly complicated to try and parse this out in smaller batches and it should not be necessary.
Maybe it’s just the SDK that’s the problem? I’ve done some pretty extensive operations in Tape and I have never run into rate limit issues like this so I’m just trying to think around the problem to try and find the best solution.
Thanks!