As you mentioned
If possible, skip the step of saving the data to SharePoint and
directly use the API call within my copyActivity in Data Factory.
I have found the below approach to Ingest data from Microsoft Graph API using Azure Data Factory.
Thank you @Kyle Gibson for excellent documentation.
I have tried the below appproach to sink data in ADLS as .json format.
Below are the steps:
Create an app registration and go to the api permissions to provide the required Graph API permissions to your App Registration.

Copy the secret from the Value column and store it securely, as this will be the only time to view the secret value. and store these value in an Azure Key Vault.
Now in the ADF Create a Linked service using the Rest service with below parameters:

Create a dataset:
Go to Services and apps just like when creating your linked service and select REST the same as your linked service.
create a dataset parameter called endpoint and use the add dynamic content @dataset().endpoint

Create a pipeline set up a Web activity to fetch your bearer token for the Graph API.
Use the like below format URL: https://login.microsoftonline.com/YourTenantID/oauth2/v2.0/token
If you are using azure key vault use the below:
https://login.microsoftonline.com/@{activity('Get Tenant ID’).output.value}/oauth2/v2.0/token

Use the below for using azure key vault:
grant_type=client_credentials&client_id=@{activity(‘Get Client ID’).output.value}&client_secret=@{activity(‘Get Client Secret’).output.value}&scope=https://graph.microsoft.com/.default
Next use copy activity configure source using the dataset that is used same as Rest service.

For Authorization: Bearer @{activity(‘Get Token’).output.access_token}
For the Pagination rules you can use the below:
AbsoluteUrl: [‘@odata.nextLink’]
In the SINK configuration you can choose ADLS and write it to .json format.
