AnsweredAssumed Answered

Using the API to associate External Tools with Assignments

Question asked by Eric Kean on May 20, 2020
Latest reply on May 23, 2020 by Eric Kean

Hi,

 

I'm able to use the API to create Assignments as well as create External Tools, but am not quite sure how to link the 2 up with the API.  For my particular use case, 5 different external tools will be associated with 5 different assignments.  The urls to the external tools are identical but they have a custom field to differentiate them.

 

According to the docs, I need to use:

 

assignment[external_tool_tag_attributes]

Hash of attributes if submission_types is ["external_tool"] Example:

external_tool_tag_attributes: {   %r/ url to the external tool  url: "http://instructure.com",   %r/ create a new tab for the module, defaults to false.   new_tab: false}

when I create my assignment.

I then have 2 questions...

1) Since there are different possible hashing methods, how does Canvas know which one I'm using?
I must be missing the boat on this one.

2) Since my external tools differ only in the custom field (differentiating for the purpose of grade passback),
how would Canvas know which particular Tool goes with which Assignment? Perhaps there's a smarter approach to this?

Thanks so much for your thoughts!

Outcomes