Metadata-Version: 2.1
Name: autograder-contrib
Version: 1.0.0
Summary: A command-line http client and other utilities for writing applications that use the autograder.io API.
Home-page: https://github.com/eecs-autograder/autograder-contrib
Author: James Perretta
Author-email: jameslp@umich.edu
License: GNU Lesser General Public License v3
Description: # Autograder.io Contrib
        Contains utilities for writing applications that use the autograder.io API.
        
        We recommend Amir Kamil's [autograder-tools](https://gitlab.eecs.umich.edu/akamil/autograder-tools/tree/master) for a larger collection of applications.
        
        # Obtaining a Token
        Log in to autograder.io in Chrome and open up the developer tools
        from the Chrome menu (View->Developer->Developer Tools on a Mac).
        Click on a course link. In the developer console, click on a request
        (e.g. my_roles/ or projects/). Under Request Headers, there is an
        Authorization entry that looks like "Token ". Copy
        the hex string and save it to the file .agtoken in your home
        directory.
        
        # The Command Line Interface
        This library provides a simple command line interface for sending requests:
        ```
        $ agcli get /api/users/current/
        ```
        
        This interface notably does not support delete requests for safety reasons. If you wish to delete something, please do so through the autograder.io website or (at your own risk) you may use the HTTPClient class described in the next section.
        
        # The HTTPClient
        The `HTTPClient` class is a starting point for sending custom requests in Python applications.
        ```
        import json
        from ag_contrib.http_client import HTTPClient, check_response_status
        
        client = HTTPClient.make_default()
        response = client.get('/api/users/current/')
        check_response_status(response)
        print(json.dumps(response.json(), indent=4))
        ```
        
Keywords: autograder
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3.6
Description-Content-Type: text/markdown
