{"docs":{"name":"OpenStax Exercises API","info":"\n<p>Access to the API must be achieved through an OAuth flow or by having a user that is logged in to the system (with a session, etc).</p>\n\n<p>When communicating with the API, developers must set a header in the HTTP request to specify which version of the API they want to use:</p>\n<table class='std-list-1' style='width: 80%; margin: 15px auto'>\n  <tr>\n    <th>Header Name</th>\n    <th>Value</th>\n    <th>Version Accessed</th>\n  </tr>\n  <tr>\n    <td><code>'Accept'</code></td>\n    <td><code>'application/vnd.exercises.openstax.v1'</code></td>\n    <td>v1</td>\n  </tr>\n</table>\n<p>Many of the API specifications provide a related JSON schema. These schemas are based on the standard defined at <a href=\"http://json-schema.org/\">http://json-schema.org/</a>. A lot of these schemas aren’t overly specific to the actions they are listed under, e.g. they always say that an <code>id</code> is required but that isn’t the case when new data is being posted to a <code>create</code> call.</p>\n","copyright":"Copyright &copy; 2011-2026 Rice University","doc_url":"/api/docs/v1","api_url":"/api","resources":[{"doc_url":"/api/docs/v1/exercises","id":"exercises","api_url":"/api","name":"Exercises","short_description":"A collection of related questions.","full_description":"\n<p>Exercises are collections of related questions about a very specific situation or topic, possibly united by a common background story.</p>\n","version":"v1","formats":null,"metadata":null,"methods":[{"doc_url":"/api/docs/v1/exercises/update","name":"update","apis":[{"api_url":"/api/exercises/:uid","http_method":"PUT","short_description":"Updates the specified Exercise","deprecated":null}],"formats":null,"full_description":"\n<p>Updates the Exercise that matches the provided UID with the given attributes.</p>\n\n<h2 id=\"eaf97323\" class=\"schema\">Schema</h2>\n<pre class='code'>\n{\n  \"type\": \"object\",\n  \"required\": [\n    \"questions\"\n  ],\n  \"properties\": {\n    \"images\": {\n      \"type\": \"string\"\n    },\n    \"logic\": {},\n    \"tags\": {\n      \"type\": \"array\",\n      \"items\": {\n        \"type\": \"string\"\n      }\n    },\n    \"nickname\": {\n      \"type\": \"string\"\n    },\n    \"license\": {},\n    \"solutions_are_public\": {\n      \"type\": \"string\"\n    },\n    \"derived_from\": {\n      \"type\": \"array\",\n      \"items\": {}\n    },\n    \"title\": {\n      \"type\": \"string\"\n    },\n    \"stimulus_html\": {\n      \"type\": \"string\"\n    },\n    \"questions\": {\n      \"type\": \"array\",\n      \"items\": {}\n    }\n  },\n  \"additionalProperties\": false\n}\n</pre>","errors":[],"params":[],"returns":[],"examples":[],"metadata":null,"see":[],"headers":[],"show":true}],"headers":[],"deprecated":false}]}}