This is the Python code to get the token and generate the headers
with httpx.Client(auth=(ClientId,ClientSecret)) as client:
params = {'grant_type': 'client_credentials'}
r = client.post('https://zoom.us/oauth/token', params=params)
token = r.json()["access_token"]
headers = {'Authorization': f'Bearer {token}',
'Content-type': 'application/json'}
The response seems ok
{"access_token":"eyJhbGciOiJIUzUx....J7hfYQ","token_type":"bearer","expires_in":3600,"scope":"meeting:master meeting:read:admin meeting:read:admin:sip_dialing meeting:write:admin meeting_token:read:admin:live_streaming meeting_token:read:admin:local_archiving meeting_token:read:admin:local_recording recording:master recording:read:admin recording:write:admin room:master room:read:admin room:write:admin user:master user:read:admin user:write:admin webinar:master webinar:read:admin webinar:write:admin webinar_token:read:admin:live_streaming webinar_token:read:admin:local_archiving webinar_token:read:admin:local_recording"}
With this header I then call an a end point
with httpx.Client(http2=True, headers=headers, verify=True) as client:
url = f'https://api.zoom.us/v2/users/{id}/meetings?\
page_number=1&page_size=300&type={meetingtype}'
r = client.get(url)