Hello @Michael Shparber and thank you for your feedback about the copy activity.
While this is probably doable in Data Factory, it could easily become rather difficult depending on some particulars. The SQL part is easy in Data Factory. It is the API source I worry about. There is a third component you might not even need, called Wrangling Data Flows in Data Factory. Wrangling Data Flows leverages Power Query, so it may be of interest given your prior Power Query experience.
The Data Factory implementation will depend upon the pagination mechanism and the format output by the api source.
If I understand correctly you will fetch the list of all students, then iterate over them, fetching data for each.
There are 3 things we can use with your source. REST Connector has pagination support but only supports JSON responses. HTTP Connector supports many data formats, but does not include pagination.