AnsweredAssumed Answered

How to enable external tool using API for course that was installed at account level

Question asked by Darryl Dieckman on Oct 15, 2015

I am installing an external tool with course navigation at the account level that is disabled by default using the API.  The tool shows up in the courses for the account with the proper disabled status in the Navigation settings.  At a later time I want to enable that tool for a specific course within the account using the API.  However, it is unclear to me how to update the course-specific navigation settings for this tool as the external_tool ID does not seem to be valid within the context of a specific course.


I think the concept that I'm missing is how to manage course-specific settings for external tools defined in the account.


POST /api/v1/accounts/5/external_tools


    "course_navigation": {

     "url": "",

      "text": "TEST",

      "visibilitys": "members",

      "default": "disabled",

      "enabled": "True",

      "label": "TEST",

      "selection_width": 800,

      "selection_height": 400,

      "icon_url": ""





This works great and gives me back an external_tool (with id = 123) that shows up in all the courses in my account with a disabled status in the Navigation settings.  Now I want to enable the tool for a specific course (with id = 456) using the API


PUT /api/v1/courses/456/external_tools/123


Returns a 404.  Same with PUT /api/v1/accounts/5/courses/456/external_tools/123


How do I enable the navigation placement for  a tool defined at the account level for a specific course?