My name is Katie, I’m one of the Support Engineers here at FreeAgent.
Yes you are correct, currently the access you get from the API is dependant on the permission level the authenticated user has, rather than a section by section access. The different areas of the app can be tightly interlinked with each other, which makes it hard to separate them out into different sections for access. For example, if you add payments to invoices, you would also need access to bank transactions and ledger entries. This is why the primary method of access is done on a user level rather than by section. However, we understand what you are asking for, and this is certainly something that we can look into and record this as a feature request with the relevant team.
Please let me know if you have any other queries about this!