Celebrate Excellence in Education: Nominate Outstanding Educators by April 15!
Found this content helpful? Log in or sign up to leave a like!
Hi Team,
We are using the webhooks / data services feature and we have come across a bit of inconsistency between events that makes it tricky to use.
1) Some include hostname and others don't
2) Some use specific ids (125) and others use global (1234300000000125)
It is much easier when the Ids are NOT in the global format
While there is inconsistency for a number of events, the most pressing issue for us at the moment is on the course_grade_change event. The hostname is not provided which is different to what is documented here https://wisenet.instructure.com/doc/api/file.data_service_canvas_grade.html#course_grade_change
And without hostname we would need to implement another new way to map the canvas account to our customer.
Please can you add the hostname?
Thanks 🙂
I have run into the same issue. I'm finding this inconsistency. I have 2 Canvas instances hitting the same SQS queue and I want to distinguish them by the hostname. But not every payload sent to SQS contains the hostname inside the metadata, which leaves me without a way to distinguish the requests by school. And there's nothing else in there that will distinguish the messages by school.
@wisenet, have you figured the way around this?
Cheers,
M
Hi @DoubleJAllDay DoubleJ
We ended up needing to rely on the ClientId to do this as I mentioned in the OP. And due to the ClientId also being returned differently eg. (125) and others use global (1234300000000125)... we opted to always use 125 and we built a thing to strip out the leading numbers to always return eg. 125
Then on every webhook we have a lookup that checks our tenants and determines which tenant matches the inbound Canvas tenant. Hence it allows us to route as required.
It was definitely frustrating that we needed to think way too much about this... but it is what it is.
Wisenet
To participate in the Instructure Community, you need to sign up or log in:
Sign In