README.md in quiz_api_client-0.1.10 vs README.md in quiz_api_client-0.2.0

- old
+ new

@@ -41,151 +41,72 @@ JWTs are created without hitting quiz_api and and they are validated on quiz_api. Tokens are created for a given scope, expiration, and an optional resource_id. Example, generate a token for building: ```ruby -client.quiz_service.token( +client.jwt_service.grant_permission( scope: client.quiz_service.scope_build, exp: Time.now.utc.to_i + 60, # some reasonable time, obviously longer is more a security risk resource_id: 1) ``` ### Calling the API Example, create a Quiz: + ```ruby client.quizzes_service.create( params: { title: 'My quiz' - } + }, + token: my_scoped_token ) ``` ### Currently Supported Functionality -#### Banks Service - -**Tokens** -```ruby -# Generate Build token -client.banks_service.token( - scope: client.banks_service.scope_build, - exp: some_expiration -) -``` - -#### Quiz Service - -**Tokens** -```ruby -# Generate Build token -client.quiz_service.token( - scope: client.quiz_service.scope_build, - exp: some_expiration, - resource_id: quiz_id_here -) -``` - #### Quizzes Service -**Tokens** ```ruby -# Generate token: Create Quiz -client.quizzes_service.token( - scope: client.quizzes_service.scope_create, - exp: some_expiration -) - -# List Quizzes -client.quizzes_service.token( - scope: client.quizzes_service.scope_list, - exp: some_expiration -) -``` - -**API Calls** -```ruby # Create Quiz -client.quizzes_service.create(params:) +client.quizzes_service.create(token:, params:) # List Quizzes -client.quizzes_service.list(params:) +client.quizzes_service.list(token:, params:) ``` #### Quiz Session Service -**Tokens** ```ruby -# Generate token: Grade Quiz Session -client.quiz_session_service.token( - scope: client.quiz_session_service.scope_grade, - exp: some_expiration, - resource_id: quiz_session_id -) - -# Generate token: Take Quiz Session -client.quiz_session_service.token( - scope: client.quiz_session_service.scope_take, - exp: some_expiration, - resource_id: quiz_session_id -) - -# Generate token: Update Quiz Session -client.quiz_session_service.token( - scope: client.quiz_session_service.scope_update, - exp: some_expiration, - resource_id: quiz_session_id -) -``` - -**API Calls** -```ruby # Update Quiz Session client.quiz_session_service.update( + token: my_scoped_token, params: { id: quiz_session_id, # Other params here } ) ``` #### Quiz Sessions Service -**Tokens** ```ruby -# Generate token: Create Quiz Session -client.quiz_sessions_service.token( - scope: client.quiz_sessions_service.scope_create, - exp: some_expiration -) -``` - -**API Calls** -```ruby # Create Quiz Session client.quiz_sessions_service.create( + token: my_scoped_token, params: { quiz_id: quiz_id_to_create_session_under } ) ``` #### QTI Imports Service -**Tokens** ```ruby -# Generate token: Create Qti Import -client.qti_imports_service.token( - scope: client.quizzes_service.scope_create, - exp: some_expiration -) -``` - -**API Calls** -```ruby # Create QTI Import client.qti_imports_service.create( + token: my_scoped_token, params: { quiz_id: quiz_id_to_create_import_under, qti_import: { url: url where QTI Export is stored } @@ -193,71 +114,45 @@ ) ``` #### Item Analyses Service -**Tokens** ```ruby -# Generate token: Fetch Item Analyses -client.item_analyses_service.token( - scope: client.item_analyses_service.scope_analysis, - exp: some_expiration -) -``` - -**API Calls** -```ruby # List item analyses client.item_analyses_service.list( + token: my_scoped_token, params: { quiz_id: quiz_id_to_list_items_under } ) # get specific item analysis client.item_analyses_service.get( + token: my_scoped_token, params: { quiz_id: quiz_id_to_list_items_under, id: item_id_to_get_under } ) ``` #### Quiz Analyses Service -**Tokens** ```ruby -# Generate token: Fetch Quiz Analyses -client.quiz_analyses_service.token( - scope: client.quiz_analyses_service.scope_analysis, - exp: some_expiration -) -``` - -**API Calls** -```ruby # get specific item analysis client.quiz_analyses_service.get( + token: my_scoped_token, params: { quiz_id: quiz_id_to_get_analysis } ) ``` #### Quiz Session Events Service -**Tokens** ```ruby -# Generate token: Fetch Quiz Session Events -client.quiz_session_events_service.token( - scope: client.quiz_session_events_service.scope_list, - exp: some_expiration -) -``` - -**API Calls** -```ruby # list quiz session events client.quiz_session_events_service.list( + token: my_scoped_token, params: { quiz_session_id: quiz_session_id_to_get_events_under } ) ```