There is no concept of Approval when you are using API for leave creation.
API will insert a record into base table directly after validating/executing all the hooks if any.
P_VALIDATE determines whether the API is being executed in validate mode or commit mode.
if you pass as TRUE, then API will be executed in validate mode. So it will be validated against any failure like custom logic, business logic etc. After validating all those condition, At the end of the API, it ll revert all the changes which was done by it.
if you pass as False, nothing will be reverted.
Hope it answers ur question.
Using API, not possible to incorporate Approval system in this.
Because, it involves many things like hr_transaction table, workflow, ame etc..
As you said, you can push the staging table data directly into base table thru API.
Note: Absence will be pushed into Base table only after approval. Till that, It will be in HR_api_transaction Table.
As API inserts directly into base table, no concept of Approval here.
Hope It ll help you.