I am using the API /access-request-status to get all the completed access requests, but the approvalIds[] array in the response is always null for all completed access requests, although there are approvals related to the approved access request.
If you need all access requests completed with their approval information, you could use the API endpoint /access-request-administration. This should give the information about who approved the request and when.
The access request-request-status does contain the approval ids but once the approvals are processed, the ids will be gone and then we can not get the approval Id information anymore. I think this is expected behaviour only as i have also observed the same some time back in my tenant.
I hope this helps, please let me know if there needs more information.
Yes, these are recently launched new APIs i think and believe they do allow us to even approve the requests on bahalf of other users if we have org_admin level PAT, so please keep a note of it as well.
For only reporting purpose i think /access-request-status should also work where in the key approvalDetails, you should be able to find the information about approvers. I am also using in my reports this end point only access-request-status for reporting. But i will leave the choice to you :).