Canvas Catalog API: listing a user's completions with a certificate

mfhodges
Community Explorer

Hello!

I was wondering if anyone has experience specifically with the Catalog API Documentation. I am trying to get a list of all Users and their certificates, however, I am finding that the API documentation is not clear enough for me to make successful calls to the endpoint. Below is the info provided in the docs:

Endpoint

GET https://www.my-catalog.edu/api/v1/completed_certificates

Parameters

NameDescriptionType
user_idrequiredCanvas Id of the userInteger
only_certificatesIndicates if the courses without certificates should be included, default is to include all coursesBoolean

In the documentation, it does not clarify where the required field 'user_id' should be implemented. I have tried to pass it as a URI such as /api/v1/completeted_certificates/<canvas_id> and also as a parameter in the header such as:

headers = {
'Authorization': 'Token token="XXXXXXXXX"',
'user_id': '2998',
}

Neither of these requests resulted in a valid request. 

For more background: I was able to troubleshoot the subtle difference in the authentication for Catalog and the Canvas instance where Catalog API specifies 'Authorization': 'Token token="XXXXX"' and Canvas API specifies  'Authorization': 'Bearer XXXXX'. 

Also, I am able to make calls to other Catalog endpoints so I am sure that it is not a domain or API key issue/typo.

If there are any developers that have experience with the Catalog API and could help me with this or let me know of a workaround that would be great!!